PageSourceSearch

https://studyindenmark.dk/static/js/plone-volto-components-manage-…oupMembershipControlPanel.92dedd7b.chunk.js

js studyindenmark.dk collected 2026-10-02 04:11:36 UTC 11,052 bytes, 2 lines download raw bytes

1(self.__LOADABLE_LOADED_CHUNKS__=self.__LOADABLE_LOADED_CHUNKS__||[]).push([[9632],{60220:(e,a,t)=>{var s=t(2776),r=t(26620),l=t(51252),n=Math.max,o=Math.min;e.exports=function(e,a,t){var u,i,c,p,d,m,v=0,g=!1,h=!1,f=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function _(a){var t=u,s=i;return u=i=void 0,v=a,p=e.apply(s,t)}function y(e){var t=e-m;return void 0===m||t>=a||t<0||h&&e-v>=c}function b(){var e=r();if(y(e))return N(e);d=setTimeout(b,function(e){var t=a-(e-m);return h?o(t,c-(e-v)):t}(e))}function N(e){return d=void 0,f&&u?_(e):(u=i=void 0,p)}function S(){var e=r(),t=y(e);if(u=arguments,i=this,m=e,t){if(void 0===d)return function(e){return v=e,d=setTimeout(b,a),g?_(e):p}(m);if(h)return clearTimeout(d),d=setTimeout(b,a),_(m)}return void 0===d&&(d=setTimeout(b,a)),p}return a=l(a)||0,s(t)&&(g=!!t.leading,c=(h="maxWait"in t)?n(l(t.maxWait)||0,a):c,f="trailing"in t?!!t.trailing:f),S.cancel=function(){void 0!==d&&clearTimeout(d),v=0,u=m=i=d=void 0},S.flush=function(){return void 0===d?p:N(r())},S}},26620:(e,a,t)=>{var s=t(32848);e.exports=function(){return s.Date.now()}},14844:(e,a,t)=>{"use strict";t.d(a,{Gs:()=>r,Qx:()=>l,Ud:()=>n,oh:()=>o});var s=t(41080);function r(e){return{type:s.k1,request:{op:"post",path:"/@groups",data:e}}}function l(e){return{type:s.Ar,request:{op:"del",path:`/@groups/${e}`}}}function n(e,a){return void 0!==a?{type:s.Wk,request:a?{op:"get",path:`/@groups?query=${a}`}:{op:"get",path:"/@groups"}}:{type:s.iC,request:e?{op:"get",path:`/@groups?query=${e}`}:{op:"get",path:"/@groups"}}}function o(e,a){return{type:s.yO,request:{op:"patch",path:`/@groups/${e}`,data:a}}}},8504:(e,a,t)=>{"use strict";t.r(a),t.d(a,{default:()=>X});var s=t(11504),r=t(22668),l=t.n(r),n=t(97104),o=t(25384),u=t(30318),i=t(900),c=t(29560),p=t(44680),d=t(1328),m=t(46024),v=t(56368),g=t(5528),h=t(32856),f=t(35080),_=t(3940),y=t(12752),b=t(47968),N=t(95016),S=t(94464),k=t(65080),C=t(90768),M=t.n(C),w=t(60220),E=t.n(w),U=t(14844),x=t(76040),D=t(59668),q=t.n(D),G=t(10892),F=t.n(G),$=t(93748),T=t.n($),A=t(39320),K=t(35976),L=t(87688),O=t(1552),B=t(75456),H=t(59724),j=t.n(H),z=s.createElement;const I=({query_user:e,query_group:a,groups_filter:t,add_joined_groups:r,many_users:l,many_groups:n})=>{var o,u,c;const d=(0,i.c)(),m=(0,p.useDispatch)(),{0:g,1:h}=(0,s.useState)(25),_=(0,p.useSelector)((e=>e.userSession.token),p.shallowEqual),y=(0,p.useSelector)((e=>e.users.user)),b=_?T()(_).sub:"";(0,s.useEffect)((()=>{m((0,B.eg)(b))}),[m,b]);const N=(0,L.YH)(y);let S=(0,p.useSelector)((e=>e.users.users)),C=!l||l&&e.length>1||l&&t.length>0;C?S.sort((function(e,a){var t=e.fullname&&e.fullname.split(" ").reverse().join(" ")||e.id,s=a.fullname&&a.fullname.split(" ").reverse().join(" ")||a.id;return t<s?-1:t>s?1:0})):S=[];let M=(0,p.useSelector)((e=>e.groups.groups));const w=e=>{var a;return(null===(a=M.find((a=>a.id===e)))||void 0===a?void 0:a.roles)||[]};let D,G=!n||n&&a.length>1||t.length>0||r;G?(D=!n||n&&a.length>1?q()(M):[],r&&S.map((e=>(D.push(...e.groups.items),e.groups.items))),D=D.map((e=>({value:e.id,label:e.title||`${e.id}`}))),t.length>0&&(D=t.concat(D)),D=F()(D,(e=>e.value)),D=D.filter((e=>"AuthenticatedUsers"!==e.value)),D.sort((function(e,a){var t=e.label.toUpperCase(),s=a.label.toUpperCase();return t<s?-1:t>s?1:0})),D=D.map((e=>(0,x.c)((0,x.c)({},e),{},{roles:w(e.value)})))):D=[];const $=(0,s.useMemo)((()=>E()(((e,a,t)=>{m((0,B.Cq)({search:e,groups_filter:a.map((e=>e.value)),limit:t}))}),300)),[m]);(0,s.useEffect)((()=>{C&&$(e,t,g)}),[$,e,t,C,g]);const H=(0,s.useMemo)((()=>E()((e=>{m((0,U.Ud)(e))}),300)),[m]);(0,s.useEffect)((()=>{G&&H(a)}),[H,a,G]);return z("div",{className:"administration_matrix"},D&&(null===(o=D)||void 0===o?void 0:o.length)>0&&z("div",{className:"label-options"},z("div",{className:"target-labels"},z("div",null,z("h3",null,S.length," users")),z("div",null,null===(u=D)||void 0===u?void 0:u.map((e=>z("div",{className:"label-options-label inclined",key:e.value},z("div",null,z("span",{className:"label"},e.label))))))),z("div",{className:"listing-row selectall",key:"selectall"},z("div",{className:"listing-item"},z("div",null),z("div",{className:"matrix_options"},null===(c=D)||void 0===c?void 0:c.map((a=>z("div",{key:a.value},z(k.c,{className:"toggle-target",defaultChecked:!1,onChange:(s,{checked:r})=>((a,s,r)=>{let l={};
1s.forEach((e=>{l[e]=!!r})),m((0,U.oh)(a,{users:l})).then((()=>{m((0,B.Cq)({search:e,groups_filter:t.map((e=>e.value)),limit:g}))})).then((()=>{A.toast.success(z(O.c,{success:!0,title:d.formatMessage(v.c.success),content:d.formatMessage(v.c.membershipUpdated)}))}))})(a.value,S.map((e=>e.id)),r),disabled:!(0,L.Gm)(N,a)})))))))),z("div",{className:"items"},S.length>0?z(s.Fragment,null,S.map((a=>{var s,r;return z("div",{className:"listing-row",key:a.id,id:`source-row-${a.id}`},z("div",{className:"listing-item",key:a["@id"]},z("div",null,z("h4",{title:`${a.fullname} ${a.id}`},(null===(s=a.fullname)||void 0===s?void 0:s.length)>25?a.fullname.slice(0,22)+"...":a.fullname||a.id)),z("div",{className:"matrix_options"},null===(r=D)||void 0===r?void 0:r.map((s=>{var r,l;return z(k.c,{className:`checkbox_${s.value}`,key:s.value,title:s.title,checked:null===(r=a.groups)||void 0===r||null===(l=r.items)||void 0===l?void 0:l.map((e=>e.id)).includes(s.value),onChange:(r,{checked:l})=>{((a,s,r)=>{var l;r=null!==(l=r)&&void 0!==l&&l;let n=a.y,o=a.x;m((0,U.oh)(n,{users:{[o]:!!s}})).then((()=>{r&&m((0,B.Cq)({search:e,groups_filter:t.map((e=>e.value)),limit:g}))})).then((()=>{r&&A.toast.success(z(O.c,{success:!0,title:d.formatMessage(v.c.success),content:d.formatMessage(v.c.membershipUpdated)}))}))})({y:s.value,x:a.id},l,!0)},disabled:!(0,L.Gm)(N,s)})})))))})),S.length<25?null:z("div",{className:"show-more"},z(K.c,{icon:!0,basic:!0,onClick:()=>h(g+25),className:"show-more-button"},z(f.c,{name:j(),size:"30px"})))):z("div",null,d.formatMessage(C&&e?v.c.noUserFound:v.c.pleaseSearchOrFilterUsers))))};var J=s.createElement;const P=({many_users:e,many_groups:a})=>{var t;const r=(0,i.c)(),l=(0,p.useDispatch)(),{0:n,1:o}=(0,s.useState)(""),{0:u,1:c}
1=(0,s.useState)(""),{0:d,1:m}=(0,s.useState)(""),{0:g,1:h}=(0,s.useState)([]),{0:f,1:_}=(0,s.useState)(!1);let y=(0,p.useSelector)((e=>e.groups.filter_groups));y&&(y=y.map((e=>({value:e.id,label:e.title||e.id}))),y.sort((function(e,a){var t=e.label.toUpperCase(),s=a.label.toUpperCase();return t<s?-1:t>s?1:0})));const b=(0,s.useMemo)((()=>E()((e=>{l((0,U.Ud)("",e))}),300)),[l]);(0,s.useEffect)((()=>{(!a||a&&d.length>1)&&b(d)}),[b,a,d]);const C=e=>{let a=e.target.querySelector("input");switch(a.value="",a.focus(),a.name){case"SearchUser":o("");break;case"SearchGroup":c("");break;case"SearchGroupFilter":m(""),h([])}},w=t=>{e||a?13===t.keyCode&&(o(t.target.value),t.preventDefault()):o(t.target.value)},x=t=>{e||a?13===t.keyCode&&(c(t.target.value),t.preventDefault()):c(t.target.value)},D=t=>{e||a?13===t.keyCode&&(m(t.target.value),t.preventDefault()):m(t.target.value)};return J("div",{className:"controlpanel_matrix"},J("div",{className:"controlpanel_search_wrapper"},J("div",{className:"controlpanel_search_y"},J(N.c,{className:"search_users",onSubmit:C},J(N.c.Field,null,J(S.c,{name:"SearchUser",action:{icon:"delete"},placeholder:r.formatMessage(v.c.searchUsers),onChange:w,onKeyDown:w,id:"user-search-input"})))),J("div",{className:"controlpanel_search_x"},J(N.c,{className:"search_groups",onSubmit:C},J(N.c.Field,null,J(S.c,{name:"SearchGroup",action:{icon:"delete"},placeholder:r.formatMessage(v.c.searchGroups),onChange:x,onKeyDown:x,id:"group-search-input"})),J(N.c.Field,null,J(k.c,{name:"addJoinedGroups",label:r.formatMessage(v.c.addJoinedGroups),title:r.formatMessage(v.c.addJoinedGroups),defaultChecked:!1,onChange:(e,{checked:a})=>{(e=>{_(e)})(a)}}))))),J("div",{className:"controlpanel_listing_wrapper"},J("div",{className:"controlpanel_filter"},J("h3",null,r.formatMessage(v.c.filterByGroups)),J(N.c,{className:"search_filter_groups",onSubmit:C},J(N.c.Field,null,J(S.c,{name:"SearchGroupFilter",action:{icon:"delete"},placeholder:r.formatMessage(v.c.searchGroups),onChange:D,onKeyDown:D,id:"groupfilter-search-input"}))),(!a||d.length>1)&&(null===(t=y)||void 0===t?void 0:t.map((e=>J(s.Fragment,{key:e.value},J(N.c.Field,null,J(k.c,{name:`filter_option_${e.value}`,key:e.value,title:e.label,label:e.label,defaultChecked:!1,onChange:(a,{checked:t})=>{((e,a)=>{let t=[];t=a?new Set([...g,e]):g.filter((a=>a.value!==e.value)),M()(t,new Set(g))||h([...t])})(e,t)}}))))))),J(I,{query_user:n,query_group:u,groups_filter:g,add_joined_groups:f,many_users:e,many_groups:a})))};var W=t(84720),Y=t.n(W),Q=t(88564),V=t.n(Q),R=s.createElement;const X=()=>{const e=(0,i.c)(),a=(0,o.Uz)(),t=(0,o.IT)().pathname,r=(0,p.useDispatch)(),N=(0,p.useSelector)((e=>{var a,t;return null===(a=e.controlpanels.controlpanel)||void 0===a||null===(t=a.data)||void 0===t?void 0:t.many_users})),S=(0,p.useSelector)((e=>{var a,t;return null===(a=e.controlpanels.controlpanel)||void 0===a||null===(t=a.data)||void 0===t?void 0:t.many_groups})),k=(0,p.useSelector)((e=>e.controlpanels.systeminformation)),C=!!k&&parseFloat(null===k||void 0===k?void 0:k.plone_restapi_version.slice(0,4))>=8.24,M=(0,p.useSelector)((e=>{var a,t;return null!==(a=null===(t=e.actions)||void 0===t?void 0:t.actions)&&void 0!==a?a:{}})),w=l()(M.user,{id:"plone_setup"}),{0:E,1:U}=(0,s.useState)(!1);return(0,s.useEffect)((()=>{U(!0)}),[]),(0,s.useEffect)((()=>{r((0,h.K)("/"))}),[r]),(0,s.useEffect)((()=>{r((0,g.Gm)("usergroup"))}),[r]),(0,s.useEffect)((()=>{r((0,g._d)())}),[r]),E&&!w?R(y.c,null):R(s.Fragment,null,R("div",{className:"users-control-panel"},R(m.c,{title:e.formatMessage(v.c.usergroupmemberbership)}),R(d.c.Group,{raised:!0},R(d.c,{className:"primary"},e.formatMessage(v.c.usergroupmemberbership)),C&&void 0!==N&&void 0!==S?N||S?R(s.Fragment,null,R(d.c,{secondary:!0},R(c.c,{id:"InfoUserGroupSettings",defaultMessage:"You have selected the option 'many users' or 'many groups'. Thus this control panel asks for input to show users and groups. If you want to see users and groups instantaneous, head over to user group settings. See the button on the left."})),R(d.c,{className:"usergroupmembership"},R(P,{many_users:N,many_groups:S}
1))):R(d.c,{className:"usergroupmembership"},R(P,{many_users:N,many_groups:S})):R(d.c,{secondary:!0,className:"usergroupmembership upgrade-info"},R("div",null,R(c.c,{id:"Please upgrade to plone.restapi >= 8.24.0.",defaultMessage:"Please upgrade to plone.restapi >= 8.24.0."}))))),E&&(0,n.createPortal)(R(_.c,{pathname:t,hideDefaultViewButtons:!0,inner:R(s.Fragment,null,R(u.cH,{className:"item",to:"#",onClick:()=>{a.push((0,b.yn)(t))}},R(f.c,{name:Y(),className:"contents circled",size:"30px"})),R(u.cH,{to:"/controlpanel/usergroup",className:"usergroup"},R(f.c,{name:V(),className:"circled","aria-label":e.formatMessage(v.c.usergroup),size:"30px",title:e.formatMessage(v.c.usergroup)})))}),document.getElementById("toolbar")))}}}]);
2//# sourceMappingURL=plone-volto-components-manage-Controlpanels-Users-UserGroupMembershipControlPanel.92dedd7b.chunk.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.