binarycloud: Tight Integration with Smarty
| From: | Alex Black | Date: | Fri, 13 Jun 2003 00:07:56 +0000 |
| Subject: | binarycloud: Tight Integration with Smarty | ||
| Groups: | php.smarty.dev | ||
| Request: | Send a blank email to php-smarty-dev+get-1566@lists.php.net to get a copy of this message | ||
Hi all,
I've cc:d the smarty-dev list in case they have any thoughts on this
subject.
As some of you may (or may not) know, I'm doing a large project with Jason
that uses binarycloud. We have discovered many things in the couple days
we've been using it under a deadline: some bad, many VERY good. I am a happy
man. This whole long process _has_ been worth it and we're coming up on
releasing an amazing system.
I have also come to the realization that Smarty is ridiculously fantastic.
We should not ignore this. In fact, we should take advantage of it and
exploit Smarty for everything we can get it to do for us. I think smarty
should be the only PHP template engine used by binarycloud.
(btw, that new smarty debug console looks fantastic).
I think it would confusing as hell to have different template engines if we
want to have a large library of standard apps based on binarycloud.
So, I propose that we merge what little code we have for configuring Smarty
into Node, along with jason's convenient bc-constants-always-available
addition to Template, ditch template, and create a new XSL class which just
renders XSL.
---------
Also, I think we _should_ maintain some bits of abstraction that we have
currently in node (like SetTplVar, etc) because we need the opportunity to
do things like add stuff to the smarty arrays that's binarycloud specific,
etc. (though this could arguable done in a bc/smarty init method somewhere
in node)
Jason and I have already taken this track with the project we're working on,
and I have I think convinced him to be willing to rely on smarty for a _lot_
more than we were both thinking at the beginning. Apps, while great, should
only be built if you need real logic - and switching a navigation menu (etc)
based on what section you're in is not my idea of "real logic" - it can be
done elegantly in the template, so it should be done there.
./rant
:)
_alex
--
alex black, project leader
binarycloud: http://www.binarycloud.com