I have a confirmation dialog where I wish to allow for buttons labeled either ‘ok’ or ‘yes’.
class Foo extends Module {
static content = {
button { $("a", text: it) }
yes(required: false) {button "Yes" }
ok(required: false) {button "OK" }
no { button "No" }
}
def confirm() { (yes ?: ok).click() }
}
Yet calling confirm() yields a RequiredPageContentNotPresent when the button is labeled ‘ok’. Only when I set require: false on button, does it play well.
Is that intended, that enabling optional content would require marking all inherited templates as require:false?
Thanks
--
You received this message because you are subscribed to the Google Groups "Geb User Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geb-user+unsubscribe@googlegroups.com.
To post to this group, send email to geb-...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/geb-user/aa7231f1-d6ca-4409-9ab9-474214b2a4a1%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
I wouldn't say that the behaviour you're seeing is intended in a way that it was foreseen, but yes, this is how it works, you will need to mark all such templates with `required: false` no to get RequiredPageContentNotPresent exceptions.Marcin
On Sun, Oct 29, 2017 at 10:34 PM, Samuel Rossinovic <samuel.r...@gmail.com> wrote:
I have a confirmation dialog where I wish to allow for buttons labeled either ‘ok’ or ‘yes’.
class Foo extends Module { static content = { button { $("a", text: it) } yes(required: false) {button "Yes" } ok(required: false) {button "OK" } no { button "No" } } def confirm() { (yes ?: ok).click() } }Yet calling confirm() yields a
RequiredPageContentNotPresentwhen the button is labeled ‘ok’. Only when I setrequire: falseonbutton, does it play well.Is that intended, that enabling optional content would require marking all inherited templates as
require:false?
Thanks
--
You received this message because you are subscribed to the Google Groups "Geb User Mailing List" group.
To unsubscribe from this group and stop receiving emails from it, send an email to geb-user+u...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/geb-user/bb61e9c7-b7ef-4772-83a5-9db25bf1e3de%40googlegroups.com.
class Foo extends Module {
static content = {
button { label ->
if (label instanceof List) label.collect {$('a', text: it)}.find { it }
else $('a', text: label)
}
submit { button (['Yes, 'Save']) }
}
}