The clientValidation key is not removed from the options array.
CActiveForm expects a string value, TbActiveForm expects an array.
Currently this means that you cannot pass in a custom clientValidation key; if you pass a string TbActiveForm tries to implode it which will fail. If you pass an array it gets passed to TbHtml which will attempt to render it as a normal attribute (thus calling htmlspecialchars on an array).
Issue 1 can be solved by using TbArray::popValue.
Issue 2 can be solved by checking the type of the "clientValidation" key.
Code snippet from CActiveForm::error()
TbActiveForm replaces this with:
This is wrong for several reasons:
Currently this means that you cannot pass in a custom clientValidation key; if you pass a string TbActiveForm tries to implode it which will fail. If you pass an array it gets passed to TbHtml which will attempt to render it as a normal attribute (thus calling htmlspecialchars on an array).
Issue 1 can be solved by using TbArray::popValue. Issue 2 can be solved by checking the type of the "clientValidation" key.