Bug #70444

EXT:form - Form attributes are not rendered in FE

Added by Bjoern Jacob about 4 years ago. Updated about 2 years ago.

Status:
Closed
Priority:
Should have
Category:
Form Framework
Target version:
Start date:
2015-10-06
Due date:
% Done:

100%

TYPO3 Version:
7
PHP Version:
Tags:
Complexity:
Is Regression:
No
Sprint Focus:

Description

The following form attributes are not rendered in FE. Please be advised that this list is not complete for the first elements (TEXTLINE, TEXTAREA). SELECT is also missing.

TEXTLINE
  • spellcheck
  • translate
TEXTAREA
  • inputmode
SUBMIT
  • autofocus
  • class
  • contenteditable
  • contextmenu
  • disabled
  • draggable
  • dropzone
  • hidden
  • spellcheck
  • translate
RESET
  • translate
FORM
  • translate
  • accept
  • action -> own issue for this
CHECKBOX
  • translate
RADIO
  • translate
HIDDEN
  • translate
PASSWORD
  • translate

Associated revisions

Revision 41a2e4e4 (diff)
Added by Bjoern Jacob about 4 years ago

[!!!][BUGFIX] EXT:form - Form attributes are not rendered in FE

Let the frontend render all the attributes one can set within the
wizard. Also remove unnecessary attributes which make no sense for the
specific form element.

Resolves: #70444
Releases: master
Change-Id: I350af9cf3f6707ff66e7f90cece8beab2faf1f07
Reviewed-on: http://review.typo3.org/43885
Reviewed-by: Bjoern Jacob <>
Tested-by: Bjoern Jacob <>
Reviewed-by: Wouter Wolters <>
Tested-by: Wouter Wolters <>

History

#1 Updated by Bjoern Jacob about 4 years ago

  • Subject changed from EXT:form - Form attributes spellcheck and translate are not rendered in FE to EXT:form - Form attributes are not rendered in FE
  • Description updated (diff)

#2 Updated by Bjoern Jacob about 4 years ago

  • Description updated (diff)

#3 Updated by Bjoern Jacob about 4 years ago

  • Description updated (diff)

#4 Updated by Ralf Zimmermann about 4 years ago

A configuration with all wizard-settable attributes:

accesskey = Accesskey
class = Class
contenteditable = false
contextmenu = Contextmenu
dir = ltr
draggable = false
dropzone = Dropzone
id = Id
lang = Lang
spellcheck = true
style = Style
tabindex = 1
title = Title
translate = yes
accept = Accept
accept-charset = Acceptcharset
action = Action
autocomplete = off
enctype = multipart/form-data
method = post
novalidate = 1

prefix = tx_form
confirmation = 1

postProcessor {
    1 = mail
    1 {
        recipientEmail = mail@example.com
        senderEmail = mail@example.com
        subject = yxyx
    }
}
10 = SELECT
10 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = false
    style = Style
    tabindex = 2
    title = Title
    translate = no
    autofocus = 1
    disabled = 1
    multiple = 1
    name = select
    required = 1
    size = 1
    label {
        value = Edit this label
    }
    10 = OPTION
    10 {
        data = Option 1
    }
    20 = OPTION
    20 {
        data = Option 2
    }
    30 = OPTION
    30 {
        data = Option 3
    }
}
20 = TEXTAREA
20 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = yes
    autofocus = 1
    cols = 40
    disabled = 1
    inputmode = katakana
    maxlength = 1
    minlength = 1
    name = textarea
    placeholder = Placeholder
    readonly = 1
    required = 1
    rows = 5
    selectionDirection = forward
    selectionStart = 1
    selectionEnd = 2
    wrap = soft
    label {
        value = Edit this label
    }
}
30 = SUBMIT
30 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autofocus = 1
    disabled = 1
    name = submit
    value = Submit form
}
40 = RADIO
40 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autofocus = 1
    checked = 1
    disabled = 1
    name = radio
    readonly = 1
    required = 1
    value = value
    label {
        value = Edit this label
    }
}
50 = PASSWORD
50 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autocomplete = off
    autofocus = 1
    disabled = 1
    maxlength = 1
    minlength = 1
    name = password
    pattern = Pattern
    placeholder = Placeholder
    readonly = 1
    required = 1
    size = 1
    value = xcxc
    label {
        value = Edit this label
    }
}
60 = HIDDEN
60 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = true
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    name = ycyc
    value = xcxds
}
70 = FILEUPLOAD
70 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    accept = Accept
    autofocus = 1
    disabled = 1
    multiple = 1
    name = upload
    readonly = 1
    required = 1
    value = xvcxyc
    label {
        value = Edit this label
    }
}
80 = RESET
80 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autofocus = 1
    disabled = 1
    name = reset
    value = Clear form
}
90 = TEXTLINE
90 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = false
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autocomplete = off
    autofocus = 1
    disabled = 1
    inputmode = latin
    list = List
    maxlength = 1
    minlength = 1
    name = textline
    pattern = Pattern
    placeholder = Placeholder
    readonly = 1
    required = 1
    size = 1
    value = xcxcxc
    label {
        value = Edit this label
    }
}
100 = CHECKBOX
100 {
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    checked = 1
    autofocus = 1
    disabled = 1
    name = checkbox
    readonly = 1
    required = 1
    value = xcxcx
    label {
        value = Edit this label
    }
}

All settable attributes as one liner for comparation:

form = accept, accept-charset, accesskey, action, autocomplete, class, contenteditable, contextmenu, dir, draggable, dropzone, enctype, hidden, id, lang, method, novalidate, spellcheck, style, tabindex, title, translate
select = accesskey, autofocus, class, contenteditable, contextmenu, dir, disabled, draggable, dropzone, hidden, id, lang, multiple, name, required, size, spellcheck, style, tabindex, title, translate
textarea = accesskey, autofocus, class, contenteditable, contextmenu, cols, dir, disabled, draggable, dropzone, hidden, id, inputmode, lang, maxlength, minlength, name, placeholder, readonly, required, rows, selectionDirection, selectionEnd, selectionStart, spellcheck, style, tabindex, title, translate, wrap
submit = accesskey, autofocus, class, contenteditable, contextmenu, dir, disabled, draggable, dropzone, hidden, id, lang, name, spellcheck, style, tabindex, title, translate, type, value
radio = accesskey, autofocus, checked, class, contenteditable, contextmenu, dir, disabled, draggable, dropzone, hidden, id, lang, name, readonly, required, spellcheck, style, tabindex, title, translate, type, value
password = accesskey, autocomplete, autofocus, class, contenteditable, contextmenu, dir, disabled, draggable, dropzone, hidden, id, lang, maxlength, minlength, name, pattern, placeholder, readonly, required, size, spellcheck, style, tabindex, title, translate, type, value
hidden = accesskey, class, contenteditable, contextmenu, dir, draggable, dropzone, hidden, id, lang, name, spellcheck, style, tabindex, title, translate, type, value
fileupload = accept, accesskey, autofocus, class, contenteditable, contextmenu, dir, disabled, draggable, dropzone, hidden, id, lang, multiple, name, readonly, required, spellcheck, style, tabindex, title, translate, type, value
reset = accesskey, autofocus, class, contenteditable, contextmenu, dir, disabled, draggable, dropzone, hidden, id, lang, name, spellcheck, style, tabindex, title, translate, type, value
textline = accesskey, autocomplete, autofocus, class, contenteditable, contextmenu, dir, disabled, draggable, dropzone, hidden, id, inputmode, lang, list, maxlength, minlength, name, pattern, placeholder, readonly, required, size, spellcheck, style, tabindex, title, translate, type, value
checkbox = accesskey, autofocus, checked, class, contenteditable, contextmenu, dir, disabled, draggable, dropzone, hidden, id, lang, name, readonly, required, spellcheck, style, tabindex, title, translate, type, value

All this attributes must be displayed at the frontend.

#5 Updated by Ralf Zimmermann about 4 years ago

I tested this patchset successfully.

#6 Updated by Gerrit Code Review about 4 years ago

  • Status changed from New to Under Review

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/43885

#7 Updated by Gerrit Code Review about 4 years ago

Patch set 1 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/43889

#8 Updated by Gerrit Code Review about 4 years ago

Patch set 2 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/43885

#9 Updated by Gerrit Code Review about 4 years ago

Patch set 3 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/43885

#10 Updated by Gerrit Code Review about 4 years ago

Patch set 4 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/43885

#11 Updated by Gerrit Code Review about 4 years ago

Patch set 5 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/43885

#12 Updated by Bjoern Jacob about 4 years ago

A new example for better testing:


# already works but not set since we want to see the form
#hidden = hidden
accesskey = Accesskey
class = Class
contenteditable = false
contextmenu = Contextmenu
dir = ltr
draggable = false
dropzone = Dropzone
id = Id
lang = Lang
spellcheck = true
style = Style
tabindex = 1
title = Title
translate = yes
accept = Accept
accept-charset = Acceptcharset
action = 1
autocomplete = off
enctype = multipart/form-data
method = post
novalidate = novalidate

prefix = tx_form
confirmation = 1

postProcessor {
    1 = mail
    1 {
        recipientEmail = mail@example.com
        senderEmail = mail@example.com
        subject = yxyx
    }
}
10 = SELECT
10 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = false
    style = Style
    tabindex = 2
    title = Title
    translate = no
    autofocus = autofocus
    disabled = disabled
    multiple = multiple
    name = select
    required = required
    size = 1
    label {
        value = Edit this label
    }
    10 = OPTION
    10 {
        data = Option 1
    }
    20 = OPTION
    20 {
        data = Option 2
    }
    30 = OPTION
    30 {
        data = Option 3
    }
}
20 = TEXTAREA
20 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = yes
    autofocus = autofocus
    cols = 40
    disabled = disabled
    inputmode = katakana
    maxlength = 1
    minlength = 1
    name = textarea
    placeholder = Placeholder
    readonly = readonly
    required = required
    rows = 5
    selectionDirection = forward
    selectionStart = 1
    selectionEnd = 2
    wrap = soft
    label {
        value = Edit this label
    }
}
30 = SUBMIT
30 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autofocus = autofocus
    disabled = disabled
    name = submit
    value = Submit form
}
40 = RADIO
40 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autofocus = autofocus
    checked = checked
    disabled = disabled
    name = radio
    readonly = readonly
    required = required
    value = value
    label {
        value = Edit this label
    }
}
50 = PASSWORD
50 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autocomplete = off
    autofocus = autofocus
    disabled = disabled
    maxlength = 1
    minlength = 1
    name = password
    pattern = Pattern
    placeholder = Placeholder
    readonly = readonly
    required = required
    size = 1
    value = xcxc
    label {
        value = Edit this label
    }
}
60 = HIDDEN
60 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = true
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    name = ycyc
    value = xcxds
}
70 = FILEUPLOAD
70 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    accept = Accept
    autofocus = autofocus
    disabled = disabled
    multiple = multiple
    name = upload
    readonly = readonly
    required = required
    value = xvcxyc
    label {
        value = Edit this label
    }
}
80 = RESET
80 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autofocus = autofocus
    disabled = disabled
    name = reset
    value = Clear form
}
90 = TEXTLINE
90 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = false
    style = Style
    tabindex = 1
    title = Title
    translate = no
    autocomplete = off
    autofocus = autofocus
    disabled = disabled
    inputmode = latin
    list = List
    maxlength = 1
    minlength = 1
    name = textline
    pattern = Pattern
    placeholder = Placeholder
    readonly = readonly
    required = required
    size = 1
    value = xcxcxc
    label {
        value = Edit this label
    }
}
100 = CHECKBOX
100 {
    # already works but not set since we want to see the form
    #hidden = hidden
    accesskey = Accesskey
    class = Class
    contenteditable = true
    contextmenu = Contextmenu
    dir = ltr
    draggable = false
    dropzone = Dropzone
    id = Id
    lang = Lang
    spellcheck = true
    style = Style
    tabindex = 1
    title = Title
    translate = no
    checked = checked
    autofocus = autofocus
    disabled = disabled
    name = checkbox
    readonly = readonly
    required = required
    value = xcxcx
    label {
        value = Edit this label
    }
}

#13 Updated by Gerrit Code Review about 4 years ago

Patch set 6 for branch master of project Packages/TYPO3.CMS has been pushed to the review server.
It is available at http://review.typo3.org/43885

#14 Updated by Bjoern Jacob about 4 years ago

  • Status changed from Under Review to Resolved
  • % Done changed from 0 to 100

#15 Updated by Riccardo De Contardi about 2 years ago

  • Status changed from Resolved to Closed

Also available in: Atom PDF