[geeklog-devel] Suggested changes to block code

Heather Engineering info at heatherengineering.com
Tue Jul 10 04:32:17 EDT 2007


Blaine,

No problem! Thanks very much.

Euan.


On 2007/07/09, at 22:05, Blaine Lang wrote:


> Hehe -- Sorry Euan as I believe I once before did the same.

>

> I will proceed to make the change then to add this extra template

> variable in the block formatting code.

>

> Blaine

>

> Heather Engineering wrote:

>> Blaine,

>>

>> That sounds fine to me. I already have custom blocks defined in

>> functions.php, so having a {bid} set would be useful.

>>

>> As a general point, which has come up before, I'm generally in

>> favour of more reusable basic templates and having classes/ids set

>> on everything. Oh, sorry, that was a little off topic.

>>

>> Cheers,

>>

>> Euan (who may or may not look like Oliver - I've never seen him).

>>

>>

>>

>>

>>

>> On 2007/07/06, at 12:37, Blaine Lang wrote:

>>

>>> Oliver,

>>>

>>> With respect to the ID for ajax usage or any DOM udpates via JS,

>>> what if we just set a template var called {bid} and you could

>>> then combine {bid} and a custom block template defined in the

>>> themes functions.php if you wanted to have a div id with a name

>>> like 'myblock{bid}' or we could just add a default id to the

>>> block-header.thtml files using {bid}.

>>>

>>> That would then not require much of any changes and no changes to

>>> the function definitions.

>>>

>>> Blaine

>>>

>>> Heather Engineering wrote:

>>>> Messing with AJAX-style coding, you soon realise you need ids on

>>>> everything.

>>>> I've added the following to the block handling code: any

>>>> interest in adding it to the next release?

>>>> There is no issue with backwards compatibility.

>>>>

>>>> *************************************************************

>>>>

>>>> function COM_formatBlock : add $A['id'] to two COM_startBlock

>>>> calls (the function is called with an array $A, so no need to

>>>> change the function declaration).

>>>>

>>>> $blkheader = COM_startBlock( $A['title'], $A['help'],

>>>> COM_getBlockTemplate( $A['name'],

>>>> 'header' ), $A['id']);

>>>>

>>>>

>>>> $retval .= COM_startBlock( $A['title'], $A['help'],

>>>> COM_getBlockTemplate( $A['name'],

>>>> 'header' ), $A['id'])

>>>>

>>>> *************************************************************

>>>>

>>>> function COM_startBlock :

>>>> add new $id='' to declaration

>>>> add $block->set_var( 'id', $id );

>>>>

>>>> I also added hack to check if the caller is passing a link to

>>>> add a help file reference, or if they are passing a complete

>>>> image tag already wrapped in a link (this is a similar hack to

>>>> the one already in COM_formatBlock to check whether to add <br >

>>>> tags to block content). An alternative might be to allow the

>>>> caller to pass a new image link as well, so that you aren't

>>>> stuck with the help icon.

>>>>

>>>>

>>>> function COM_startBlock( $title='', $helpfile='',

>>>> $template='blockheader.thtml', $id='' )

>>>> {

>>>> global $_CONF, $LANG01, $_IMAGE_TYPE;

>>>>

>>>> $block = new Template( $_CONF['path_layout'] );

>>>> $block->set_file( 'block', $template );

>>>>

>>>> $block->set_var( 'site_url', $_CONF['site_url'] );

>>>> $block->set_var( 'layout_url', $_CONF['layout_url'] );

>>>> if ($title==' ') {

>>>> $block->set_var( 'block_title', '');

>>>> } else {

>>>> $block->set_var( 'block_title', stripslashes( $title ));

>>>> }

>>>>

>>>> // added

>>>> $block->set_var( 'id', $id );

>>>> // end add

>>>>

>>>> if( !empty( $helpfile ))

>>>> {

>>>>

>>>> // altered

>>>> if( substr( $helpfile, 0, 1 ) == '<' )

>>>> {

>>>> $help = $helpfile;

>>>> }

>>>> else

>>>> {

>>>> $helpimg = $_CONF['layout_url'] . '/images/

>>>> button_help.' . $_IMAGE_TYPE;

>>>> if( !stristr( $helpfile, 'http://' ))

>>>> {

>>>> $help = '<a class="blocktitle" href="' . $_CONF

>>>> ['site_url'] . '/help/' . $helpfile

>>>> . '" target="_blank"><img src="' . $helpimg

>>>> . '" border="0" alt="?"></a>';

>>>> }

>>>> else

>>>> {

>>>> $help = '<a class="blocktitle" href="' . $helpfile

>>>> . '" target="_blank"><img src="' . $helpimg

>>>> . '" border="0" alt="?"></a>';

>>>> }

>>>> // end alteration

>>>>

>>>> }

>>>>

>>>> $block->set_var( 'block_help', $help );

>>>> }

>>>>

>>>> $block->parse( 'startHTML', 'block' );

>>>>

>>>> return $block->finish( $block->get_var( 'startHTML' ));

>>>> }

>>>>

>>>> *************************************************************

>>>>

>>>>

>>>> Cheers,

>>>> Euan.

>>>>

>>>> _______________________________________________

>>>> geeklog-devel mailing list

>>>> geeklog-devel at lists.geeklog.net

>>>> http://eight.pairlist.net/mailman/listinfo/geeklog-devel

>>>>

>>>>

>>> _______________________________________________

>>> geeklog-devel mailing list

>>> geeklog-devel at lists.geeklog.net

>>> http://eight.pairlist.net/mailman/listinfo/geeklog-devel

>>

>> _______________________________________________

>> geeklog-devel mailing list

>> geeklog-devel at lists.geeklog.net

>> http://eight.pairlist.net/mailman/listinfo/geeklog-devel

>>

>>

> _______________________________________________

> geeklog-devel mailing list

> geeklog-devel at lists.geeklog.net

> http://eight.pairlist.net/mailman/listinfo/geeklog-devel





More information about the geeklog-devel mailing list