@@ -1895,41 +1895,11 @@ pimcore.helpers.editmode = {};
18951895pimcore . helpers . editmode . openLinkEditPanel = function ( data , callback , config ) {
18961896 const TARGETS = [ "" , "_blank" , "_self" , "_top" , "_parent" ] ;
18971897 const TYPES = [ "asset" , "document" , "object" ] ;
1898- const SUBTYPES = {
1899- document : pimcore . globalmanager . get ( "document_search_types" ) . filter ( v => v !== "folder" ) ,
1900- asset : pimcore . globalmanager . get ( "asset_search_types" ) . filter ( v => v !== "folder" ) ,
1901- object : pimcore . globalmanager . get ( "object_search_types" ) . filter ( v => v !== "folder" ) ,
1902- } ;
19031898
19041899 config = config || { } ;
19051900 const disabledFields = config . disabledFields || [ ] ;
19061901 const allowedTargets = Ext . Array . intersect ( TARGETS , config . allowedTargets || TARGETS ) ;
19071902 const allowedTypes = Ext . Array . intersect ( TYPES , config . allowedTypes || TYPES ) ;
1908- const allowedSubtypes = Object . fromEntries ( Object . entries ( SUBTYPES ) . map ( ( [ key , value ] ) => [
1909- key ,
1910- config . allowedSubtypes ?. [ key ] ?. filter ( v => v !== "folder" ) . length
1911- ? Ext . Array . intersect ( value , config . allowedSubtypes [ key ] )
1912- : value
1913- ] ) ) ;
1914- const allowedClasses = config . allowedClasses ;
1915-
1916- const dndAllowed = ( data ) => {
1917- const type = data . elementType ;
1918-
1919- if ( ! allowedTypes . includes ( type ) ) {
1920- return false ;
1921- }
1922-
1923- if ( Array . isArray ( allowedSubtypes ?. [ type ] ) && ! allowedSubtypes [ type ] . includes ( data . type ) ) {
1924- return false ;
1925- }
1926-
1927- if ( type === "object" && Array . isArray ( allowedClasses ) && ! allowedClasses . includes ( data . className ) ) {
1928- return false ;
1929- }
1930-
1931- return true ;
1932- } ;
19331903
19341904 const internalTypeField = new Ext . form . Hidden ( {
19351905 fieldLabel : 'internalType' ,
@@ -1982,7 +1952,7 @@ pimcore.helpers.editmode.openLinkEditPanel = function (data, callback, config) {
19821952 }
19831953
19841954 data = data . records [ 0 ] . data ;
1985- if ( dndAllowed ( data ) ) {
1955+ if ( data . type !== "folder" && allowedTypes . includes ( data . elementType ) ) {
19861956 return Ext . dd . DropZone . prototype . dropAllowed ;
19871957 }
19881958 } . bind ( this ) ,
@@ -1993,7 +1963,7 @@ pimcore.helpers.editmode.openLinkEditPanel = function (data, callback, config) {
19931963 }
19941964
19951965 data = data . records [ 0 ] . data ;
1996- if ( dndAllowed ( data ) ) {
1966+ if ( data . type !== "folder" && allowedTypes . includes ( data . elementType ) ) {
19971967 internalTypeField . setValue ( data . elementType ) ;
19981968 linkTypeField . setValue ( 'internal' ) ;
19991969 pathField . setValue ( data . path ) ;
@@ -2028,11 +1998,7 @@ pimcore.helpers.editmode.openLinkEditPanel = function (data, callback, config) {
20281998 return true ;
20291999 }
20302000 } , {
2031- type : allowedTypes ,
2032- subtype : allowedSubtypes ,
2033- specific : {
2034- classes : allowedClasses ,
2035- } ,
2001+ type : allowedTypes
20362002 } ) ;
20372003 }
20382004 } ) ;
0 commit comments