mirror of
https://github.com/10h30/ultimatemember.git
synced 2026-07-11 18:56:10 +09:00
- change blocks folder
This commit is contained in:
@@ -0,0 +1,81 @@
|
|||||||
|
import { registerBlockType } from '@wordpress/blocks';
|
||||||
|
import ServerSideRender from '@wordpress/server-side-render';
|
||||||
|
import { InspectorControls, useBlockProps } from '@wordpress/block-editor';
|
||||||
|
import { PanelBody, SelectControl } from "@wordpress/components";
|
||||||
|
import { useMemo, useCallback } from '@wordpress/element';
|
||||||
|
|
||||||
|
registerBlockType('um-block/um-account', {
|
||||||
|
edit: function (props) {
|
||||||
|
const { attributes, setAttributes } = props;
|
||||||
|
const { tab } = attributes;
|
||||||
|
const blockProps = useBlockProps();
|
||||||
|
|
||||||
|
const options = useMemo(() => {
|
||||||
|
const option = [{ label: wp.i18n.__('All', 'ultimate-member'), value: 'all' }];
|
||||||
|
for (const key in um_account_settings) {
|
||||||
|
if (um_account_settings.hasOwnProperty(key) && um_account_settings[key]['enabled']) {
|
||||||
|
option.push({
|
||||||
|
label: um_account_settings[key]['label'],
|
||||||
|
value: key
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return option;
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
const onTabChange = useCallback((value) => {
|
||||||
|
setAttributes({ tab: value });
|
||||||
|
const shortcode = `[ultimatemember_account${value !== 'all' ? ` tab="${value}"` : ''}]`;
|
||||||
|
setAttributes({ content: shortcode });
|
||||||
|
}, [setAttributes]);
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div {...blockProps}>
|
||||||
|
<ServerSideRender block="um-block/um-account" attributes={attributes} />
|
||||||
|
<InspectorControls>
|
||||||
|
<PanelBody title={wp.i18n.__('Account Tab', 'ultimate-member')}>
|
||||||
|
<SelectControl
|
||||||
|
label={wp.i18n.__('Select Tab', 'ultimate-member')}
|
||||||
|
className="um_select_account_tab"
|
||||||
|
value={tab}
|
||||||
|
options={options}
|
||||||
|
style={{ height: '35px', lineHeight: '20px', padding: '0 7px' }}
|
||||||
|
onChange={onTabChange}
|
||||||
|
/>
|
||||||
|
</PanelBody>
|
||||||
|
</InspectorControls>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
|
||||||
|
save: () => null
|
||||||
|
});
|
||||||
|
|
||||||
|
jQuery(window).on( 'load', function($) {
|
||||||
|
let observer = new MutationObserver(function(mutations) {
|
||||||
|
mutations.forEach(function(mutation) {
|
||||||
|
|
||||||
|
jQuery(mutation.addedNodes).find('.um.um-account').each(function() {
|
||||||
|
let current_tab = jQuery(this).find('.um-account-main').attr('data-current_tab');
|
||||||
|
let wrapper = document.querySelector('.um-form');
|
||||||
|
|
||||||
|
if ( current_tab ) {
|
||||||
|
jQuery(this).find('.um-account-tab[data-tab="'+current_tab+'"]').show();
|
||||||
|
jQuery(this).find('.um-account-tab:not(:visible)').find( 'input, select, textarea' ).not( ':disabled' ).addClass('um_account_inactive').prop( 'disabled', true ).attr( 'disabled', true );
|
||||||
|
um_responsive();
|
||||||
|
}
|
||||||
|
|
||||||
|
if (wrapper) {
|
||||||
|
wrapper.addEventListener('click', (event) => {
|
||||||
|
if (event.target !== wrapper) {
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
observer.observe(document, {attributes: false, childList: true, characterData: false, subtree:true});
|
||||||
|
});
|
||||||
@@ -0,0 +1,74 @@
|
|||||||
|
import { useSelect } from '@wordpress/data';
|
||||||
|
import { PanelBody, SelectControl, Spinner } from '@wordpress/components';
|
||||||
|
import { InspectorControls, useBlockProps } from '@wordpress/block-editor';
|
||||||
|
import ServerSideRender from '@wordpress/server-side-render';
|
||||||
|
import { registerBlockType } from '@wordpress/blocks';
|
||||||
|
import { useMemo } from '@wordpress/element';
|
||||||
|
|
||||||
|
registerBlockType('um-block/um-forms', {
|
||||||
|
edit: function (props) {
|
||||||
|
const blockProps = useBlockProps();
|
||||||
|
const { attributes, setAttributes } = props;
|
||||||
|
const { form_id } = attributes;
|
||||||
|
|
||||||
|
const posts = useSelect(
|
||||||
|
(select) => select('core').getEntityRecords('postType', 'um_form', { per_page: -1, _fields: ['id', 'title'] }),
|
||||||
|
[]
|
||||||
|
);
|
||||||
|
|
||||||
|
const options = useMemo(() => {
|
||||||
|
if (!posts) {
|
||||||
|
return [{ label: wp.i18n.__('Loading...', 'ultimate-member'), value: '' }];
|
||||||
|
}
|
||||||
|
if (posts.length === 0) {
|
||||||
|
return [{ label: wp.i18n.__('No forms found.', 'ultimate-member'), value: '' }];
|
||||||
|
}
|
||||||
|
return [{ label: wp.i18n.__('Select Form', 'ultimate-member'), value: '' }].concat(
|
||||||
|
posts.map((post) => ({ label: post.title.rendered, value: post.id }))
|
||||||
|
);
|
||||||
|
}, [posts]);
|
||||||
|
|
||||||
|
const onFormChange = (value) => setAttributes({ form_id: value });
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div {...blockProps}>
|
||||||
|
<ServerSideRender block="um-block/um-forms" attributes={attributes} />
|
||||||
|
<InspectorControls>
|
||||||
|
<PanelBody title={wp.i18n.__('Select Forms', 'ultimate-member')}>
|
||||||
|
<SelectControl
|
||||||
|
label={wp.i18n.__('Select Forms', 'ultimate-member')}
|
||||||
|
className="um_select_forms"
|
||||||
|
value={form_id}
|
||||||
|
options={options}
|
||||||
|
onChange={onFormChange}
|
||||||
|
/>
|
||||||
|
</PanelBody>
|
||||||
|
</InspectorControls>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
|
||||||
|
save: () => null
|
||||||
|
});
|
||||||
|
|
||||||
|
jQuery(window).on( 'load', function($) {
|
||||||
|
let observer = new MutationObserver(function(mutations) {
|
||||||
|
mutations.forEach(function(mutation) {
|
||||||
|
|
||||||
|
jQuery(mutation.addedNodes).find('.um-form').each(function() {
|
||||||
|
let wrapper = document.querySelector('.um-form');
|
||||||
|
|
||||||
|
if (wrapper) {
|
||||||
|
wrapper.addEventListener('click', (event) => {
|
||||||
|
if (event.target !== wrapper) {
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
observer.observe(document, {attributes: false, childList: true, characterData: false, subtree:true});
|
||||||
|
});
|
||||||
@@ -0,0 +1,107 @@
|
|||||||
|
import { useSelect } from '@wordpress/data';
|
||||||
|
import { PanelBody, SelectControl, Spinner } from '@wordpress/components';
|
||||||
|
import { InspectorControls, useBlockProps } from '@wordpress/block-editor';
|
||||||
|
import ServerSideRender from '@wordpress/server-side-render';
|
||||||
|
import { registerBlockType } from "@wordpress/blocks";
|
||||||
|
import { useMemo } from '@wordpress/element';
|
||||||
|
|
||||||
|
registerBlockType('um-block/um-member-directories', {
|
||||||
|
edit: function (props) {
|
||||||
|
const blockProps = useBlockProps();
|
||||||
|
const { attributes, setAttributes } = props;
|
||||||
|
const { member_id } = attributes;
|
||||||
|
|
||||||
|
const posts = useSelect((select) => {
|
||||||
|
return select('core').getEntityRecords('postType', 'um_directory', {
|
||||||
|
per_page: -1,
|
||||||
|
_fields: ['id', 'title']
|
||||||
|
});
|
||||||
|
}, []);
|
||||||
|
|
||||||
|
const options = useMemo(() => {
|
||||||
|
if (!posts) {
|
||||||
|
return [{ label: wp.i18n.__('Loading...', 'ultimate-member'), value: '' }];
|
||||||
|
}
|
||||||
|
if (posts.length === 0) {
|
||||||
|
return [{ label: wp.i18n.__('No posts found.', 'ultimate-member'), value: '' }];
|
||||||
|
}
|
||||||
|
return [{ label: wp.i18n.__('Select Directory', 'ultimate-member'), value: '' }].concat(
|
||||||
|
posts.map((post) => ({
|
||||||
|
label: post.title.rendered,
|
||||||
|
value: post.id
|
||||||
|
}))
|
||||||
|
);
|
||||||
|
}, [posts]);
|
||||||
|
|
||||||
|
const onMemberIdChange = (value) => setAttributes({ member_id: value });
|
||||||
|
|
||||||
|
if (!posts) {
|
||||||
|
return (
|
||||||
|
<p>
|
||||||
|
<Spinner />
|
||||||
|
{wp.i18n.__('Loading...', 'ultimate-member')}
|
||||||
|
</p>
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div {...blockProps}>
|
||||||
|
<ServerSideRender block="um-block/um-member-directories" attributes={attributes} />
|
||||||
|
<InspectorControls>
|
||||||
|
<PanelBody title={wp.i18n.__('Select Directories', 'ultimate-member')}>
|
||||||
|
<SelectControl
|
||||||
|
label={wp.i18n.__('Select Directories', 'ultimate-member')}
|
||||||
|
className="um_select_directory"
|
||||||
|
value={member_id}
|
||||||
|
options={options}
|
||||||
|
onChange={onMemberIdChange}
|
||||||
|
/>
|
||||||
|
</PanelBody>
|
||||||
|
</InspectorControls>
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
|
||||||
|
save: () => null
|
||||||
|
});
|
||||||
|
|
||||||
|
jQuery(window).on( 'load', function($) {
|
||||||
|
let observer = new MutationObserver(function(mutations) {
|
||||||
|
mutations.forEach(function(mutation) {
|
||||||
|
|
||||||
|
jQuery(mutation.addedNodes).find('.um.um-directory').each(function() {
|
||||||
|
let wrapper = document.querySelector('.um-directory');
|
||||||
|
let directory = jQuery(this);
|
||||||
|
um_ajax_get_members( directory );
|
||||||
|
um_slider_filter_init( directory );
|
||||||
|
um_datepicker_filter_init( directory );
|
||||||
|
um_timepicker_filter_init( directory );
|
||||||
|
|
||||||
|
if (wrapper) {
|
||||||
|
wrapper.addEventListener('click', (event) => {
|
||||||
|
if (event.target !== wrapper) {
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
jQuery(mutation.addedNodes).find('.um-member').each(function() {
|
||||||
|
let wrapper = document.querySelector('.um-member');
|
||||||
|
let directory = jQuery(this).parent();
|
||||||
|
UM_Member_Grid(directory);
|
||||||
|
|
||||||
|
if (wrapper) {
|
||||||
|
wrapper.addEventListener('click', (event) => {
|
||||||
|
if (event.target !== wrapper) {
|
||||||
|
event.preventDefault();
|
||||||
|
event.stopPropagation();
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
observer.observe(document, {attributes: false, childList: true, characterData: false, subtree:true});
|
||||||
|
});
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
import { registerBlockType } from '@wordpress/blocks';
|
||||||
|
import ServerSideRender from '@wordpress/server-side-render';
|
||||||
|
import { useBlockProps } from '@wordpress/block-editor';
|
||||||
|
|
||||||
|
registerBlockType('um-block/um-password-reset', {
|
||||||
|
edit: function () {
|
||||||
|
const blockProps = useBlockProps();
|
||||||
|
|
||||||
|
return (
|
||||||
|
<div {...blockProps}>
|
||||||
|
<ServerSideRender block="um-block/um-password-reset" />
|
||||||
|
</div>
|
||||||
|
);
|
||||||
|
},
|
||||||
|
|
||||||
|
save: () => null
|
||||||
|
});
|
||||||
@@ -1 +0,0 @@
|
|||||||
(()=>{"use strict";var t={n:e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},d:(e,n)=>{for(var a in n)t.o(n,a)&&!t.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:n[a]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)};const e=window.wp.blocks,n=window.wp.serverSideRender;var a=t.n(n);const o=window.wp.blockEditor,c=window.wp.components,u=window.wp.element,i=window.ReactJSXRuntime;(0,e.registerBlockType)("um-block/um-account",{edit:function(t){const{attributes:e,setAttributes:n}=t,{tab:r}=e,s=(0,o.useBlockProps)(),l=(0,u.useMemo)((()=>{const t=[{label:wp.i18n.__("All","ultimate-member"),value:"all"}];for(const e in um_account_settings)um_account_settings.hasOwnProperty(e)&&um_account_settings[e].enabled&&t.push({label:um_account_settings[e].label,value:e});return t}),[]),d=(0,u.useCallback)((t=>{n({tab:t}),n({content:`[ultimatemember_account${"all"!==t?` tab="${t}"`:""}]`})}),[n]);return(0,i.jsxs)("div",{...s,children:[(0,i.jsx)(a(),{block:"um-block/um-account",attributes:e}),(0,i.jsx)(o.InspectorControls,{children:(0,i.jsx)(c.PanelBody,{title:wp.i18n.__("Account Tab","ultimate-member"),children:(0,i.jsx)(c.SelectControl,{label:wp.i18n.__("Select Tab","ultimate-member"),className:"um_select_account_tab",value:r,options:l,style:{height:"35px",lineHeight:"20px",padding:"0 7px"},onChange:d})})})]})},save:()=>null}),jQuery(window).on("load",(function(t){new MutationObserver((function(t){t.forEach((function(t){jQuery(t.addedNodes).find(".um.um-account").each((function(){let t=jQuery(this).find(".um-account-main").attr("data-current_tab"),e=document.querySelector(".um-form");t&&(jQuery(this).find('.um-account-tab[data-tab="'+t+'"]').show(),jQuery(this).find(".um-account-tab:not(:visible)").find("input, select, textarea").not(":disabled").addClass("um_account_inactive").prop("disabled",!0).attr("disabled",!0),um_responsive()),e&&e.addEventListener("click",(t=>{t.target!==e&&(t.preventDefault(),t.stopPropagation())}))}))}))})).observe(document,{attributes:!1,childList:!0,characterData:!1,subtree:!0})}))})();
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
(()=>{"use strict";var e={n:t=>{var o=t&&t.__esModule?()=>t.default:()=>t;return e.d(o,{a:o}),o},d:(t,o)=>{for(var r in o)e.o(o,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:o[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const t=window.wp.data,o=window.wp.components,r=window.wp.blockEditor,n=window.wp.serverSideRender;var l=e.n(n);const i=window.wp.blocks,a=window.wp.element,s=window.ReactJSXRuntime;(0,i.registerBlockType)("um-block/um-forms",{edit:function(e){const n=(0,r.useBlockProps)(),{attributes:i,setAttributes:u}=e,{form_id:c}=i,d=(0,t.useSelect)((e=>e("core").getEntityRecords("postType","um_form",{per_page:-1,_fields:["id","title"]})),[]),m=(0,a.useMemo)((()=>d?0===d.length?[{label:wp.i18n.__("No forms found.","ultimate-member"),value:""}]:[{label:wp.i18n.__("Select Form","ultimate-member"),value:""}].concat(d.map((e=>({label:e.title.rendered,value:e.id})))):[{label:wp.i18n.__("Loading...","ultimate-member"),value:""}]),[d]);return(0,s.jsxs)("div",{...n,children:[(0,s.jsx)(l(),{block:"um-block/um-forms",attributes:i}),(0,s.jsx)(r.InspectorControls,{children:(0,s.jsx)(o.PanelBody,{title:wp.i18n.__("Select Forms","ultimate-member"),children:(0,s.jsx)(o.SelectControl,{label:wp.i18n.__("Select Forms","ultimate-member"),className:"um_select_forms",value:c,options:m,onChange:e=>u({form_id:e})})})})]})},save:()=>null}),jQuery(window).on("load",(function(e){new MutationObserver((function(e){e.forEach((function(e){jQuery(e.addedNodes).find(".um-form").each((function(){let e=document.querySelector(".um-form");e&&e.addEventListener("click",(t=>{t.target!==e&&(t.preventDefault(),t.stopPropagation())}))}))}))})).observe(document,{attributes:!1,childList:!0,characterData:!1,subtree:!0})}))})();
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
(()=>{"use strict";var e={n:t=>{var r=t&&t.__esModule?()=>t.default:()=>t;return e.d(r,{a:r}),r},d:(t,r)=>{for(var i in r)e.o(r,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:r[i]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const t=window.wp.data,r=window.wp.components,i=window.wp.blockEditor,n=window.wp.serverSideRender;var o=e.n(n);const l=window.wp.blocks,a=window.wp.element,c=window.ReactJSXRuntime;(0,l.registerBlockType)("um-block/um-member-directories",{edit:function(e){const n=(0,i.useBlockProps)(),{attributes:l,setAttributes:d}=e,{member_id:u}=l,m=(0,t.useSelect)((e=>e("core").getEntityRecords("postType","um_directory",{per_page:-1,_fields:["id","title"]})),[]),s=(0,a.useMemo)((()=>m?0===m.length?[{label:wp.i18n.__("No posts found.","ultimate-member"),value:""}]:[{label:wp.i18n.__("Select Directory","ultimate-member"),value:""}].concat(m.map((e=>({label:e.title.rendered,value:e.id})))):[{label:wp.i18n.__("Loading...","ultimate-member"),value:""}]),[m]);return m?(0,c.jsxs)("div",{...n,children:[(0,c.jsx)(o(),{block:"um-block/um-member-directories",attributes:l}),(0,c.jsx)(i.InspectorControls,{children:(0,c.jsx)(r.PanelBody,{title:wp.i18n.__("Select Directories","ultimate-member"),children:(0,c.jsx)(r.SelectControl,{label:wp.i18n.__("Select Directories","ultimate-member"),className:"um_select_directory",value:u,options:s,onChange:e=>d({member_id:e})})})})]}):(0,c.jsxs)("p",{children:[(0,c.jsx)(r.Spinner,{}),wp.i18n.__("Loading...","ultimate-member")]})},save:()=>null}),jQuery(window).on("load",(function(e){new MutationObserver((function(e){e.forEach((function(e){jQuery(e.addedNodes).find(".um.um-directory").each((function(){let e=document.querySelector(".um-directory"),t=jQuery(this);um_ajax_get_members(t),um_slider_filter_init(t),um_datepicker_filter_init(t),um_timepicker_filter_init(t),e&&e.addEventListener("click",(t=>{t.target!==e&&(t.preventDefault(),t.stopPropagation())}))})),jQuery(e.addedNodes).find(".um-member").each((function(){let e=document.querySelector(".um-member"),t=jQuery(this).parent();UM_Member_Grid(t),e&&e.addEventListener("click",(t=>{t.target!==e&&(t.preventDefault(),t.stopPropagation())}))}))}))})).observe(document,{attributes:!1,childList:!0,characterData:!1,subtree:!0})}))})();
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
(()=>{"use strict";var e={n:o=>{var r=o&&o.__esModule?()=>o.default:()=>o;return e.d(r,{a:r}),r},d:(o,r)=>{for(var t in r)e.o(r,t)&&!e.o(o,t)&&Object.defineProperty(o,t,{enumerable:!0,get:r[t]})},o:(e,o)=>Object.prototype.hasOwnProperty.call(e,o)};const o=window.wp.blocks,r=window.wp.serverSideRender;var t=e.n(r);const n=window.wp.blockEditor,s=window.ReactJSXRuntime;(0,o.registerBlockType)("um-block/um-password-reset",{edit:function(){const e=(0,n.useBlockProps)();return(0,s.jsx)("div",{...e,children:(0,s.jsx)(t(),{block:"um-block/um-password-reset"})})},save:()=>null})})();
|
|
||||||
@@ -1,81 +1 @@
|
|||||||
import { registerBlockType } from '@wordpress/blocks';
|
(()=>{"use strict";var t={n:e=>{var n=e&&e.__esModule?()=>e.default:()=>e;return t.d(n,{a:n}),n},d:(e,n)=>{for(var a in n)t.o(n,a)&&!t.o(e,a)&&Object.defineProperty(e,a,{enumerable:!0,get:n[a]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)};const e=window.wp.blocks,n=window.wp.serverSideRender;var a=t.n(n);const o=window.wp.blockEditor,c=window.wp.components,u=window.wp.element,i=window.ReactJSXRuntime;(0,e.registerBlockType)("um-block/um-account",{edit:function(t){const{attributes:e,setAttributes:n}=t,{tab:r}=e,s=(0,o.useBlockProps)(),l=(0,u.useMemo)((()=>{const t=[{label:wp.i18n.__("All","ultimate-member"),value:"all"}];for(const e in um_account_settings)um_account_settings.hasOwnProperty(e)&&um_account_settings[e].enabled&&t.push({label:um_account_settings[e].label,value:e});return t}),[]),d=(0,u.useCallback)((t=>{n({tab:t}),n({content:`[ultimatemember_account${"all"!==t?` tab="${t}"`:""}]`})}),[n]);return(0,i.jsxs)("div",{...s,children:[(0,i.jsx)(a(),{block:"um-block/um-account",attributes:e}),(0,i.jsx)(o.InspectorControls,{children:(0,i.jsx)(c.PanelBody,{title:wp.i18n.__("Account Tab","ultimate-member"),children:(0,i.jsx)(c.SelectControl,{label:wp.i18n.__("Select Tab","ultimate-member"),className:"um_select_account_tab",value:r,options:l,style:{height:"35px",lineHeight:"20px",padding:"0 7px"},onChange:d})})})]})},save:()=>null}),jQuery(window).on("load",(function(t){new MutationObserver((function(t){t.forEach((function(t){jQuery(t.addedNodes).find(".um.um-account").each((function(){let t=jQuery(this).find(".um-account-main").attr("data-current_tab"),e=document.querySelector(".um-form");t&&(jQuery(this).find('.um-account-tab[data-tab="'+t+'"]').show(),jQuery(this).find(".um-account-tab:not(:visible)").find("input, select, textarea").not(":disabled").addClass("um_account_inactive").prop("disabled",!0).attr("disabled",!0),um_responsive()),e&&e.addEventListener("click",(t=>{t.target!==e&&(t.preventDefault(),t.stopPropagation())}))}))}))})).observe(document,{attributes:!1,childList:!0,characterData:!1,subtree:!0})}))})();
|
||||||
import ServerSideRender from '@wordpress/server-side-render';
|
|
||||||
import { InspectorControls, useBlockProps } from '@wordpress/block-editor';
|
|
||||||
import { PanelBody, SelectControl } from "@wordpress/components";
|
|
||||||
import { useMemo, useCallback } from '@wordpress/element';
|
|
||||||
|
|
||||||
registerBlockType('um-block/um-account', {
|
|
||||||
edit: function (props) {
|
|
||||||
const { attributes, setAttributes } = props;
|
|
||||||
const { tab } = attributes;
|
|
||||||
const blockProps = useBlockProps();
|
|
||||||
|
|
||||||
const options = useMemo(() => {
|
|
||||||
const option = [{ label: wp.i18n.__('All', 'ultimate-member'), value: 'all' }];
|
|
||||||
for (const key in um_account_settings) {
|
|
||||||
if (um_account_settings.hasOwnProperty(key) && um_account_settings[key]['enabled']) {
|
|
||||||
option.push({
|
|
||||||
label: um_account_settings[key]['label'],
|
|
||||||
value: key
|
|
||||||
});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return option;
|
|
||||||
}, []);
|
|
||||||
|
|
||||||
const onTabChange = useCallback((value) => {
|
|
||||||
setAttributes({ tab: value });
|
|
||||||
const shortcode = `[ultimatemember_account${value !== 'all' ? ` tab="${value}"` : ''}]`;
|
|
||||||
setAttributes({ content: shortcode });
|
|
||||||
}, [setAttributes]);
|
|
||||||
|
|
||||||
return (
|
|
||||||
<div {...blockProps}>
|
|
||||||
<ServerSideRender block="um-block/um-account" attributes={attributes} />
|
|
||||||
<InspectorControls>
|
|
||||||
<PanelBody title={wp.i18n.__('Account Tab', 'ultimate-member')}>
|
|
||||||
<SelectControl
|
|
||||||
label={wp.i18n.__('Select Tab', 'ultimate-member')}
|
|
||||||
className="um_select_account_tab"
|
|
||||||
value={tab}
|
|
||||||
options={options}
|
|
||||||
style={{ height: '35px', lineHeight: '20px', padding: '0 7px' }}
|
|
||||||
onChange={onTabChange}
|
|
||||||
/>
|
|
||||||
</PanelBody>
|
|
||||||
</InspectorControls>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
},
|
|
||||||
|
|
||||||
save: () => null
|
|
||||||
});
|
|
||||||
|
|
||||||
jQuery(window).on( 'load', function($) {
|
|
||||||
let observer = new MutationObserver(function(mutations) {
|
|
||||||
mutations.forEach(function(mutation) {
|
|
||||||
|
|
||||||
jQuery(mutation.addedNodes).find('.um.um-account').each(function() {
|
|
||||||
let current_tab = jQuery(this).find('.um-account-main').attr('data-current_tab');
|
|
||||||
let wrapper = document.querySelector('.um-form');
|
|
||||||
|
|
||||||
if ( current_tab ) {
|
|
||||||
jQuery(this).find('.um-account-tab[data-tab="'+current_tab+'"]').show();
|
|
||||||
jQuery(this).find('.um-account-tab:not(:visible)').find( 'input, select, textarea' ).not( ':disabled' ).addClass('um_account_inactive').prop( 'disabled', true ).attr( 'disabled', true );
|
|
||||||
um_responsive();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (wrapper) {
|
|
||||||
wrapper.addEventListener('click', (event) => {
|
|
||||||
if (event.target !== wrapper) {
|
|
||||||
event.preventDefault();
|
|
||||||
event.stopPropagation();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
observer.observe(document, {attributes: false, childList: true, characterData: false, subtree:true});
|
|
||||||
});
|
|
||||||
@@ -1,74 +1 @@
|
|||||||
import { useSelect } from '@wordpress/data';
|
(()=>{"use strict";var e={n:t=>{var o=t&&t.__esModule?()=>t.default:()=>t;return e.d(o,{a:o}),o},d:(t,o)=>{for(var r in o)e.o(o,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:o[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const t=window.wp.data,o=window.wp.components,r=window.wp.blockEditor,n=window.wp.serverSideRender;var l=e.n(n);const i=window.wp.blocks,a=window.wp.element,s=window.ReactJSXRuntime;(0,i.registerBlockType)("um-block/um-forms",{edit:function(e){const n=(0,r.useBlockProps)(),{attributes:i,setAttributes:u}=e,{form_id:c}=i,d=(0,t.useSelect)((e=>e("core").getEntityRecords("postType","um_form",{per_page:-1,_fields:["id","title"]})),[]),m=(0,a.useMemo)((()=>d?0===d.length?[{label:wp.i18n.__("No forms found.","ultimate-member"),value:""}]:[{label:wp.i18n.__("Select Form","ultimate-member"),value:""}].concat(d.map((e=>({label:e.title.rendered,value:e.id})))):[{label:wp.i18n.__("Loading...","ultimate-member"),value:""}]),[d]);return(0,s.jsxs)("div",{...n,children:[(0,s.jsx)(l(),{block:"um-block/um-forms",attributes:i}),(0,s.jsx)(r.InspectorControls,{children:(0,s.jsx)(o.PanelBody,{title:wp.i18n.__("Select Forms","ultimate-member"),children:(0,s.jsx)(o.SelectControl,{label:wp.i18n.__("Select Forms","ultimate-member"),className:"um_select_forms",value:c,options:m,onChange:e=>u({form_id:e})})})})]})},save:()=>null}),jQuery(window).on("load",(function(e){new MutationObserver((function(e){e.forEach((function(e){jQuery(e.addedNodes).find(".um-form").each((function(){let e=document.querySelector(".um-form");e&&e.addEventListener("click",(t=>{t.target!==e&&(t.preventDefault(),t.stopPropagation())}))}))}))})).observe(document,{attributes:!1,childList:!0,characterData:!1,subtree:!0})}))})();
|
||||||
import { PanelBody, SelectControl, Spinner } from '@wordpress/components';
|
|
||||||
import { InspectorControls, useBlockProps } from '@wordpress/block-editor';
|
|
||||||
import ServerSideRender from '@wordpress/server-side-render';
|
|
||||||
import { registerBlockType } from '@wordpress/blocks';
|
|
||||||
import { useMemo } from '@wordpress/element';
|
|
||||||
|
|
||||||
registerBlockType('um-block/um-forms', {
|
|
||||||
edit: function (props) {
|
|
||||||
const blockProps = useBlockProps();
|
|
||||||
const { attributes, setAttributes } = props;
|
|
||||||
const { form_id } = attributes;
|
|
||||||
|
|
||||||
const posts = useSelect(
|
|
||||||
(select) => select('core').getEntityRecords('postType', 'um_form', { per_page: -1, _fields: ['id', 'title'] }),
|
|
||||||
[]
|
|
||||||
);
|
|
||||||
|
|
||||||
const options = useMemo(() => {
|
|
||||||
if (!posts) {
|
|
||||||
return [{ label: wp.i18n.__('Loading...', 'ultimate-member'), value: '' }];
|
|
||||||
}
|
|
||||||
if (posts.length === 0) {
|
|
||||||
return [{ label: wp.i18n.__('No forms found.', 'ultimate-member'), value: '' }];
|
|
||||||
}
|
|
||||||
return [{ label: wp.i18n.__('Select Form', 'ultimate-member'), value: '' }].concat(
|
|
||||||
posts.map((post) => ({ label: post.title.rendered, value: post.id }))
|
|
||||||
);
|
|
||||||
}, [posts]);
|
|
||||||
|
|
||||||
const onFormChange = (value) => setAttributes({ form_id: value });
|
|
||||||
|
|
||||||
return (
|
|
||||||
<div {...blockProps}>
|
|
||||||
<ServerSideRender block="um-block/um-forms" attributes={attributes} />
|
|
||||||
<InspectorControls>
|
|
||||||
<PanelBody title={wp.i18n.__('Select Forms', 'ultimate-member')}>
|
|
||||||
<SelectControl
|
|
||||||
label={wp.i18n.__('Select Forms', 'ultimate-member')}
|
|
||||||
className="um_select_forms"
|
|
||||||
value={form_id}
|
|
||||||
options={options}
|
|
||||||
onChange={onFormChange}
|
|
||||||
/>
|
|
||||||
</PanelBody>
|
|
||||||
</InspectorControls>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
},
|
|
||||||
|
|
||||||
save: () => null
|
|
||||||
});
|
|
||||||
|
|
||||||
jQuery(window).on( 'load', function($) {
|
|
||||||
let observer = new MutationObserver(function(mutations) {
|
|
||||||
mutations.forEach(function(mutation) {
|
|
||||||
|
|
||||||
jQuery(mutation.addedNodes).find('.um-form').each(function() {
|
|
||||||
let wrapper = document.querySelector('.um-form');
|
|
||||||
|
|
||||||
if (wrapper) {
|
|
||||||
wrapper.addEventListener('click', (event) => {
|
|
||||||
if (event.target !== wrapper) {
|
|
||||||
event.preventDefault();
|
|
||||||
event.stopPropagation();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
observer.observe(document, {attributes: false, childList: true, characterData: false, subtree:true});
|
|
||||||
});
|
|
||||||
@@ -1,107 +1 @@
|
|||||||
import { useSelect } from '@wordpress/data';
|
(()=>{"use strict";var e={n:t=>{var r=t&&t.__esModule?()=>t.default:()=>t;return e.d(r,{a:r}),r},d:(t,r)=>{for(var i in r)e.o(r,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:r[i]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const t=window.wp.data,r=window.wp.components,i=window.wp.blockEditor,n=window.wp.serverSideRender;var o=e.n(n);const l=window.wp.blocks,a=window.wp.element,c=window.ReactJSXRuntime;(0,l.registerBlockType)("um-block/um-member-directories",{edit:function(e){const n=(0,i.useBlockProps)(),{attributes:l,setAttributes:d}=e,{member_id:u}=l,m=(0,t.useSelect)((e=>e("core").getEntityRecords("postType","um_directory",{per_page:-1,_fields:["id","title"]})),[]),s=(0,a.useMemo)((()=>m?0===m.length?[{label:wp.i18n.__("No posts found.","ultimate-member"),value:""}]:[{label:wp.i18n.__("Select Directory","ultimate-member"),value:""}].concat(m.map((e=>({label:e.title.rendered,value:e.id})))):[{label:wp.i18n.__("Loading...","ultimate-member"),value:""}]),[m]);return m?(0,c.jsxs)("div",{...n,children:[(0,c.jsx)(o(),{block:"um-block/um-member-directories",attributes:l}),(0,c.jsx)(i.InspectorControls,{children:(0,c.jsx)(r.PanelBody,{title:wp.i18n.__("Select Directories","ultimate-member"),children:(0,c.jsx)(r.SelectControl,{label:wp.i18n.__("Select Directories","ultimate-member"),className:"um_select_directory",value:u,options:s,onChange:e=>d({member_id:e})})})})]}):(0,c.jsxs)("p",{children:[(0,c.jsx)(r.Spinner,{}),wp.i18n.__("Loading...","ultimate-member")]})},save:()=>null}),jQuery(window).on("load",(function(e){new MutationObserver((function(e){e.forEach((function(e){jQuery(e.addedNodes).find(".um.um-directory").each((function(){let e=document.querySelector(".um-directory"),t=jQuery(this);um_ajax_get_members(t),um_slider_filter_init(t),um_datepicker_filter_init(t),um_timepicker_filter_init(t),e&&e.addEventListener("click",(t=>{t.target!==e&&(t.preventDefault(),t.stopPropagation())}))})),jQuery(e.addedNodes).find(".um-member").each((function(){let e=document.querySelector(".um-member"),t=jQuery(this).parent();UM_Member_Grid(t),e&&e.addEventListener("click",(t=>{t.target!==e&&(t.preventDefault(),t.stopPropagation())}))}))}))})).observe(document,{attributes:!1,childList:!0,characterData:!1,subtree:!0})}))})();
|
||||||
import { PanelBody, SelectControl, Spinner } from '@wordpress/components';
|
|
||||||
import { InspectorControls, useBlockProps } from '@wordpress/block-editor';
|
|
||||||
import ServerSideRender from '@wordpress/server-side-render';
|
|
||||||
import { registerBlockType } from "@wordpress/blocks";
|
|
||||||
import { useMemo } from '@wordpress/element';
|
|
||||||
|
|
||||||
registerBlockType('um-block/um-member-directories', {
|
|
||||||
edit: function (props) {
|
|
||||||
const blockProps = useBlockProps();
|
|
||||||
const { attributes, setAttributes } = props;
|
|
||||||
const { member_id } = attributes;
|
|
||||||
|
|
||||||
const posts = useSelect((select) => {
|
|
||||||
return select('core').getEntityRecords('postType', 'um_directory', {
|
|
||||||
per_page: -1,
|
|
||||||
_fields: ['id', 'title']
|
|
||||||
});
|
|
||||||
}, []);
|
|
||||||
|
|
||||||
const options = useMemo(() => {
|
|
||||||
if (!posts) {
|
|
||||||
return [{ label: wp.i18n.__('Loading...', 'ultimate-member'), value: '' }];
|
|
||||||
}
|
|
||||||
if (posts.length === 0) {
|
|
||||||
return [{ label: wp.i18n.__('No posts found.', 'ultimate-member'), value: '' }];
|
|
||||||
}
|
|
||||||
return [{ label: wp.i18n.__('Select Directory', 'ultimate-member'), value: '' }].concat(
|
|
||||||
posts.map((post) => ({
|
|
||||||
label: post.title.rendered,
|
|
||||||
value: post.id
|
|
||||||
}))
|
|
||||||
);
|
|
||||||
}, [posts]);
|
|
||||||
|
|
||||||
const onMemberIdChange = (value) => setAttributes({ member_id: value });
|
|
||||||
|
|
||||||
if (!posts) {
|
|
||||||
return (
|
|
||||||
<p>
|
|
||||||
<Spinner />
|
|
||||||
{wp.i18n.__('Loading...', 'ultimate-member')}
|
|
||||||
</p>
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
return (
|
|
||||||
<div {...blockProps}>
|
|
||||||
<ServerSideRender block="um-block/um-member-directories" attributes={attributes} />
|
|
||||||
<InspectorControls>
|
|
||||||
<PanelBody title={wp.i18n.__('Select Directories', 'ultimate-member')}>
|
|
||||||
<SelectControl
|
|
||||||
label={wp.i18n.__('Select Directories', 'ultimate-member')}
|
|
||||||
className="um_select_directory"
|
|
||||||
value={member_id}
|
|
||||||
options={options}
|
|
||||||
onChange={onMemberIdChange}
|
|
||||||
/>
|
|
||||||
</PanelBody>
|
|
||||||
</InspectorControls>
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
},
|
|
||||||
|
|
||||||
save: () => null
|
|
||||||
});
|
|
||||||
|
|
||||||
jQuery(window).on( 'load', function($) {
|
|
||||||
let observer = new MutationObserver(function(mutations) {
|
|
||||||
mutations.forEach(function(mutation) {
|
|
||||||
|
|
||||||
jQuery(mutation.addedNodes).find('.um.um-directory').each(function() {
|
|
||||||
let wrapper = document.querySelector('.um-directory');
|
|
||||||
let directory = jQuery(this);
|
|
||||||
um_ajax_get_members( directory );
|
|
||||||
um_slider_filter_init( directory );
|
|
||||||
um_datepicker_filter_init( directory );
|
|
||||||
um_timepicker_filter_init( directory );
|
|
||||||
|
|
||||||
if (wrapper) {
|
|
||||||
wrapper.addEventListener('click', (event) => {
|
|
||||||
if (event.target !== wrapper) {
|
|
||||||
event.preventDefault();
|
|
||||||
event.stopPropagation();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
jQuery(mutation.addedNodes).find('.um-member').each(function() {
|
|
||||||
let wrapper = document.querySelector('.um-member');
|
|
||||||
let directory = jQuery(this).parent();
|
|
||||||
UM_Member_Grid(directory);
|
|
||||||
|
|
||||||
if (wrapper) {
|
|
||||||
wrapper.addEventListener('click', (event) => {
|
|
||||||
if (event.target !== wrapper) {
|
|
||||||
event.preventDefault();
|
|
||||||
event.stopPropagation();
|
|
||||||
}
|
|
||||||
});
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
observer.observe(document, {attributes: false, childList: true, characterData: false, subtree:true});
|
|
||||||
});
|
|
||||||
@@ -1,17 +1 @@
|
|||||||
import { registerBlockType } from '@wordpress/blocks';
|
(()=>{"use strict";var e={n:o=>{var r=o&&o.__esModule?()=>o.default:()=>o;return e.d(r,{a:r}),r},d:(o,r)=>{for(var t in r)e.o(r,t)&&!e.o(o,t)&&Object.defineProperty(o,t,{enumerable:!0,get:r[t]})},o:(e,o)=>Object.prototype.hasOwnProperty.call(e,o)};const o=window.wp.blocks,r=window.wp.serverSideRender;var t=e.n(r);const n=window.wp.blockEditor,s=window.ReactJSXRuntime;(0,o.registerBlockType)("um-block/um-password-reset",{edit:function(){const e=(0,n.useBlockProps)();return(0,s.jsx)("div",{...e,children:(0,s.jsx)(t(),{block:"um-block/um-password-reset"})})},save:()=>null})})();
|
||||||
import ServerSideRender from '@wordpress/server-side-render';
|
|
||||||
import { useBlockProps } from '@wordpress/block-editor';
|
|
||||||
|
|
||||||
registerBlockType('um-block/um-password-reset', {
|
|
||||||
edit: function () {
|
|
||||||
const blockProps = useBlockProps();
|
|
||||||
|
|
||||||
return (
|
|
||||||
<div {...blockProps}>
|
|
||||||
<ServerSideRender block="um-block/um-password-reset" />
|
|
||||||
</div>
|
|
||||||
);
|
|
||||||
},
|
|
||||||
|
|
||||||
save: () => null
|
|
||||||
});
|
|
||||||
@@ -101,7 +101,7 @@ if ( ! class_exists( 'um\core\Blocks' ) ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if ( function_exists( 'wp_register_block_metadata_collection' ) ) {
|
if ( function_exists( 'wp_register_block_metadata_collection' ) ) {
|
||||||
wp_register_block_metadata_collection( UM_PATH . 'build', UM_PATH . 'build/blocks-manifest.php' );
|
wp_register_block_metadata_collection( UM_PATH . 'includes/blocks', UM_PATH . 'includes/blocks/blocks-manifest.php' );
|
||||||
}
|
}
|
||||||
|
|
||||||
$blocks = array(
|
$blocks = array(
|
||||||
@@ -136,7 +136,7 @@ if ( ! class_exists( 'um\core\Blocks' ) ) {
|
|||||||
|
|
||||||
foreach ( $blocks as $k => $block_data ) {
|
foreach ( $blocks as $k => $block_data ) {
|
||||||
$block_type = str_replace( 'um-block/', '', $k );
|
$block_type = str_replace( 'um-block/', '', $k );
|
||||||
register_block_type_from_metadata( UM_PATH . 'build/' . $block_type, $block_data );
|
register_block_type_from_metadata( UM_PATH . 'includes/blocks/' . $block_type, $block_data );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
+2
-2
@@ -23,8 +23,8 @@
|
|||||||
"scripts": {
|
"scripts": {
|
||||||
"build:docs": "rm -rf docs/hooks/ && jsdoc -c hookdoc-conf.json",
|
"build:docs": "rm -rf docs/hooks/ && jsdoc -c hookdoc-conf.json",
|
||||||
"build": "npm-run-all build:*",
|
"build": "npm-run-all build:*",
|
||||||
"build-blocks": "wp-scripts build --webpack-src-dir=includes/blocks --output-path=build",
|
"build-blocks": "wp-scripts build --webpack-src-dir=blocks-src --output-path=includes/blocks",
|
||||||
"build-manifest": "wp-scripts build-blocks-manifest",
|
"build-manifest": "wp-scripts build-blocks-manifest --input=includes/blocks --output=includes/blocks/blocks-manifest.php",
|
||||||
"build:all-blocks": "npm-run-all build-blocks build-manifest"
|
"build:all-blocks": "npm-run-all build-blocks build-manifest"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
|
|||||||
@@ -15,6 +15,8 @@
|
|||||||
<exclude-pattern>node_modules/*</exclude-pattern>
|
<exclude-pattern>node_modules/*</exclude-pattern>
|
||||||
<exclude-pattern>documentor/*</exclude-pattern>
|
<exclude-pattern>documentor/*</exclude-pattern>
|
||||||
<exclude-pattern>\.idea/*</exclude-pattern>
|
<exclude-pattern>\.idea/*</exclude-pattern>
|
||||||
|
<exclude-pattern>blocks-src/*</exclude-pattern>
|
||||||
|
<exclude-pattern>build/*</exclude-pattern>
|
||||||
|
|
||||||
<rule ref="WordPress-Extra"/>
|
<rule ref="WordPress-Extra"/>
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user