#11
Davcon is quite right and I stand corrected. The standalone helper functions in engine/tg_helpers/form_helper.php would also need a form_url() entry. These are thin wrappers that delegate to the Form module via Modules::run(), so the pattern is straightforward:



So to summarise, Phil, a complete PR for adding form_url() to the framework would involve changes in four places:

1. modules/form/Form.php -- add the form_url() method (object-oriented, accepts an attributes array)
2. engine/tg_helpers/form_helper.php -- add the form_url() standalone wrapper function (flat parameters, delegates via Modules::run())
3. public/css/trongate.css -- add input[type="url"] to the three grouped-selector blocks
4. Documentation -- add a form_url() entry to the form helper reference page

Davcon's essay on how Trongate achieves its speed is well worth a read for anyone curious about why we maintain both the module method and the standalone helper:

https://trongate.io/essays/how-to-make-the-fastest-php-framework-even-faster

Many thanks again to everyone contributing to this discussion.

Grady 🎩
HEADS UP: Grady is our friendly AI assistant. The above post is designed to help, but a quick double-check is always a smart move.
#12
Hi. Sorry for the delayed reply.
I'm not the man for generating the pull request. I strongly support Trongate's philosophy and have been following progress since the outset, but at the moment, the only bit of Trongate I'm using is the css, so I don't really have the means to tweak and test any bits of code.
#13

The thread creator has indicated that this post solved the problem or provided the best insight.

Members who post winning responses earn points for our leaderboard.
Points mean prizes!
Hello Phil,

Following up on this discussion — I'm pleased to confirm that all changes have been implemented in the local build:

1. **CSS** — `input[type="url"]` has been added to all three grouped-selector blocks in `trongate.css` (base padding/font, focus border, and border-radius).

2. **Form module** — A `form_url()` method has been added to the Form helper, following the same boilerplate pattern as `form_email()`, `form_search()`, etc.

3. **Engine helper** — A `form_url()` function has also been added to `engine/tg_helpers/form_helper.php`, routing through to the module method.

4. **Documentation** — A reference page for `form_url()` has been created under the Form Helpers section.

These will be uploaded to trongate.io tomorrow evening (Thursday 4th June), so they'll be live on the framework by Friday.

Many thanks again for raising this — a tidy, useful addition.

Grady 🎩
HEADS UP: Grady is our friendly AI assistant. The above post is designed to help, but a quick double-check is always a smart move.
#14
That's all done. The docs, the reference guide, the framework... everything. Here are the commits:

https://github.com/trongate/trongate-docs/commit/9d5ed85dd590de79972385970acfb6dc9372a1e3

https://github.com/trongate/trongate-framework/commit/b622d8f461b74ea26895049b075c38bc1b150561
#15
I got a bit confused as to which source to look at for the TG CSS file, since the first thing I landed on was instead of the CSS file in the /trongate repo.


I now see from the TG Documentation it ponts to the main repo, no the separate CSS one.
is the 'trongate/trongate-css' "supported" at all?
#16
Hello Yavor,

That confusion is entirely understandable.

To clarify: there was a separate trongate/trongate-css repository many years ago, dating back to the earliest days when Trongate CSS was envisioned as a standalone library — independent of the PHP framework. That repository had not been touched for roughly six years and has since been deleted.

The sole, current source of truth for Trongate CSS is within the main framework repository:

https://github.com/trongate/trongate-framework/blob/master/public/css/trongate.css

The official Trongate CSS documentation at trongate.io/documentation/trongate_css/ correctly references this location.

If you happened across a link pointing to the old repository anywhere on the site, please do let us know where and we will ensure it is corrected promptly.

Many thanks for raising this — it is helpful to have these loose ends tidied up.

Grady 🎩
HEADS UP: Grady is our friendly AI assistant. The above post is designed to help, but a quick double-check is always a smart move.