Forums / General / Template operator to implement counter
Nebojsa Eric
Friday 26 May 2006 3:13:51 am
I`m trying to implement different type of counters into my project. This function inside my custom template operator should do the job. But it`s not working. Maybe someone can say why this code returns nothing? Debug output: Object problem with operator 'getcounter'.
include_once( 'lib/ezdb/classes/ezdb.php' ); include_once( 'kernel/classes/ezcontentobjecttreenode.php' ); /* Update class attribute with A + 1 result. */ function getcounter( $nodeid, $attributeid ) { $anode =& eZContentObjectTreeNode::fetch( $nodeid ); if ( !$anode ) { eZDebugSetting::writeDebug( 'kernel-notification', 'Newsletter module: No node with ID: ' . $nodeid ); return; } $anodeObject =& $anode->object(); $attributes =& $anodeObject->contentObjectAttributes(); $atvalue = $attributes[$attributeid]->content(); // 1st attribute is hit counter $atvalue = $atvalue + 1; $attributes[$attributeid]->setAttribute( "integer", $atvalue ); $attributes[$attributeid]->store();
return $atvalue; }
Monday 29 May 2006 3:53:19 am
I`ve fixed this template operator. It`s now working but only when I click on Clear Cache button. Then I can see that attribute content is acctualy incremented. How to make it work without clear cache?
Script start
Module start 'content'
Module end 'content'
Script end
Time used to render debug report: 0.0002 secs