Forums / Developer / cronjobs hide /unhide

cronjobs hide /unhide

Author Message

Jorge estévez

Wednesday 17 February 2010 5:35:53 am

Hello,

I am trying to make an unHide cronjob so I made some changes for unhide.php based on the hide.php as follows (I added comments to the changed lines), please also check my other comment at http://share.ez.no/forums/developer/cronjobs-hide-unhide

<code>

<?php
//
// Created on: <21-Jan-05 16:00:52 kk>
//
// SOFTWARE NAME: eZ publish
// SOFTWARE RELEASE: 3.10.0
// BUILD VERSION: 20254
// COPYRIGHT NOTICE: Copyright (C) 1999-2007 eZ systems AS
// SOFTWARE LICENSE: GNU General Public License v2.0
// NOTICE: >
// This program is free software; you can redistribute it and/or
// modify it under the terms of version 2.0 of the GNU General
// Public License as published by the Free Software Foundation.
//
// This program is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
// GNU General Public License for more details.
//
// You should have received a copy of version 2.0 of the GNU General
// Public License along with this program; if not, write to the Free
// Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
// MA 02110-1301, USA.
//
//
/*! \file hide.php
*/
include_once( "kernel/classes/ezcontentobjecttreenode.php" );
include_once( "lib/ezutils/classes/ezini.php" );
$ini =& eZINI::instance( 'content.ini' );
$rootNodeIDList = $ini->variable( 'HideSettings','RootNodeList' );
$hideAttributeArray = $ini->variable( 'HideSettings', 'HideDateAttributeList' );
$hideClasses = array_keys( $hideAttributeArray );
$currrentDate = time();
$offset = 0;
$limit = 20;
foreach( $rootNodeIDList as $nodeID )
{
$rootNode = eZContentObjectTreeNode::fetch( $nodeID );
while( true )
{
$nodeArray =& $rootNode->subTree( array( 'ClassFilterType' => 'include',
'ClassFilterArray' => $hideClasses,
'Offset' => $offset,
'Limit' => $limit ) );
if ( !$nodeArray ||
count( $nodeArray ) == 0 )
{
break;
}
$offset += $limit;
foreach ( array_keys( $nodeArray ) as $key )
{
$node =& $nodeArray[$key];
$dataMap =& $node->attribute( 'data_map' );
$dateAttributeName = $hideAttributeArray[$node->attribute( 'class_identifier' )];
if ( !$dateAttributeName )
{
continue;
}
$dateAttribute =& $dataMap[$dateAttributeName];
if ( is_null( $dateAttribute ) || !$dateAttribute->hasContent() )
{
continue;
}
$date = $dateAttribute->content();
$retractDate = $date->attribute( 'timestamp' );

///////////////////////// changed !$node->attribute( 'is_hidden' ) to $node->attribute( 'is_hidden' )
if ( $retractDate > 0 && $retractDate < $currrentDate && $node->attribute( 'is_hidden' ) )
{
///////////////////////// changed hideSubTree to unhideSubTree
eZContentObjectTreeNode::unhideSubTree( $node );
if ( !$isQuiet )
{
$cli->output( 'unHiding node : ' . $node->attribute( 'node_id' ) );
}
}
}
}
}
?>
?>

</code>

It's a project using ezp 3.10 version!

Q: Could this work for me (please take a look at http://share.ez.no/forums/developer/cronjobs-hide-unhide) ?

Thanks

Diseño Web Cuba
Web Design Cuba
www.elfosdesign.com

Jorge estévez

Wednesday 17 February 2010 7:13:25 am

Hello again,

I got deeper and made some slight changes to the unhide.php specially:

if ( $retractDate > 0 && $currrentDate > $retractDate )

I have unhide.php running, but I encountered a problem: While searching for nodes It does not consider a hidded nodes, I need to take those hidden nodes into consideration (in fact those are the ones I need to process) cause the main issue here is to unhide them....
I assume that this is where I need to make changes to include hidden nodes:

$nodeArray =& $rootNode->subTree( array( 'ClassFilterType' => 'include',
'ClassFilterArray' => $unhideClasses,
'Offset' => $offset,
'Limit' => $limit ) );

How?
I need some help... thanks

Diseño Web Cuba
Web Design Cuba
www.elfosdesign.com

Jorge estévez

Wednesday 17 February 2010 7:51:34 am

I added:

<code>

$fetchHidden = true;

$nodeArray =& $rootNode->subTree( array( 'ClassFilterType' => 'include',
'ClassFilterArray' => $unhideClasses,
'Offset' => $offset,
'Limit' => $limit,
'FetchHidden' => $fetchHidden ) );

</code>

Hidden nodes are not fetched...

Diseño Web Cuba
Web Design Cuba
www.elfosdesign.com

SEBBANE Alexandre

Wednesday 17 February 2010 1:49:01 pm

Hello,

there already something about unhide .

check here http://www.mugo.ca/Products/Hide-Until-Date

Paris, France

Georg Franz

Thursday 18 February 2010 2:03:24 am

Hi,

the hide cronjob is useless for big sites, see bug report: http://issues.ez.no/IssueView.php?Id=14831&activeItem=1

Best wishes,
Georg.

--
http://www.schicksal.com Horoskop website which uses eZ Publish since 2004

Jorge estévez

Friday 19 February 2010 8:16:36 am

Hello,

I think I have the solution, I have posted all at http://issues.ez.no/IssueView.php?Id=14831& the scripts to hide and unhide nodes and it's childs.

Thanks to all...

I think it will work for versions 3.10+

Diseño Web Cuba
Web Design Cuba
www.elfosdesign.com

eZ debug

Timing: Jan 17 2025 23:53:52
Script start
Timing: Jan 17 2025 23:53:52
Module start 'content'
Timing: Jan 17 2025 23:53:53
Module end 'content'
Timing: Jan 17 2025 23:53:53
Script end

Main resources:

Total runtime1.1907 sec
Peak memory usage4,096.0000 KB
Database Queries206

Timing points:

CheckpointStart (sec)Duration (sec)Memory at start (KB)Memory used (KB)
Script start 0.00000.0066 594.6172180.8438
Module start 'content' 0.00661.0604 775.4609637.2344
Module end 'content' 1.06700.1237 1,412.6953341.0703
Script end 1.1907  1,753.7656 

Time accumulators:

 Accumulator Duration (sec) Duration (%) Count Average (sec)
Ini load
Load cache0.00400.3339210.0002
Check MTime0.00140.1196210.0001
Mysql Total
Database connection0.00070.056910.0007
Mysqli_queries1.092291.72342060.0053
Looping result0.00210.17762040.0000
Template Total1.164397.820.5822
Template load0.00180.153920.0009
Template processing1.162597.627620.5812
Template load and register function0.00020.014110.0002
states
state_id_array0.00170.141510.0017
state_identifier_array0.00080.066320.0004
Override
Cache load0.00180.15331320.0000
Sytem overhead
Fetch class attribute can translate value0.00170.142340.0004
Fetch class attribute name0.00100.082880.0001
XML
Image XML parsing0.00360.299940.0009
class_abstraction
Instantiating content class attribute0.00000.001180.0000
General
dbfile0.00670.5614330.0002
String conversion0.00000.000630.0000
Note: percentages do not add up to 100% because some accumulators overlap

CSS/JS files loaded with "ezjscPacker" during request:

CacheTypePacklevelSourceFiles
CSS0extension/community/design/community/stylesheets/ext/jquery.autocomplete.css
extension/community_design/design/suncana/stylesheets/scrollbars.css
extension/community_design/design/suncana/stylesheets/tabs.css
extension/community_design/design/suncana/stylesheets/roadmap.css
extension/community_design/design/suncana/stylesheets/content.css
extension/community_design/design/suncana/stylesheets/star-rating.css
extension/community_design/design/suncana/stylesheets/syntax_and_custom_tags.css
extension/community_design/design/suncana/stylesheets/buttons.css
extension/community_design/design/suncana/stylesheets/tweetbox.css
extension/community_design/design/suncana/stylesheets/jquery.fancybox-1.3.4.css
extension/bcsmoothgallery/design/standard/stylesheets/magnific-popup.css
extension/sevenx/design/simple/stylesheets/star_rating.css
extension/sevenx/design/simple/stylesheets/libs/fontawesome/css/all.min.css
extension/sevenx/design/simple/stylesheets/main.v02.css
extension/sevenx/design/simple/stylesheets/main.v02.res.css
JS0extension/ezjscore/design/standard/lib/yui/3.17.2/build/yui/yui-min.js
extension/ezjscore/design/standard/javascript/jquery-3.7.0.min.js
extension/community_design/design/suncana/javascript/jquery.ui.core.min.js
extension/community_design/design/suncana/javascript/jquery.ui.widget.min.js
extension/community_design/design/suncana/javascript/jquery.easing.1.3.js
extension/community_design/design/suncana/javascript/jquery.ui.tabs.js
extension/community_design/design/suncana/javascript/jquery.hoverIntent.min.js
extension/community_design/design/suncana/javascript/jquery.popmenu.js
extension/community_design/design/suncana/javascript/jScrollPane.js
extension/community_design/design/suncana/javascript/jquery.mousewheel.js
extension/community_design/design/suncana/javascript/jquery.cycle.all.js
extension/sevenx/design/simple/javascript/jquery.scrollTo.js
extension/community_design/design/suncana/javascript/jquery.cookie.js
extension/community_design/design/suncana/javascript/ezstarrating_jquery.js
extension/community_design/design/suncana/javascript/jquery.initboxes.js
extension/community_design/design/suncana/javascript/app.js
extension/community_design/design/suncana/javascript/twitterwidget.js
extension/community_design/design/suncana/javascript/community.js
extension/community_design/design/suncana/javascript/roadmap.js
extension/community_design/design/suncana/javascript/ez.js
extension/community_design/design/suncana/javascript/ezshareevents.js
extension/sevenx/design/simple/javascript/main.js

Templates used to render the page:

UsageRequested templateTemplateTemplate loadedEditOverride
1node/view/full.tplfull/forum_topic.tplextension/sevenx/design/simple/override/templates/full/forum_topic.tplEdit templateOverride template
6content/datatype/view/ezxmltext.tpl<No override>extension/community_design/design/suncana/templates/content/datatype/view/ezxmltext.tplEdit templateOverride template
12content/datatype/view/ezxmltags/paragraph.tpl<No override>extension/ezwebin/design/ezwebin/templates/content/datatype/view/ezxmltags/paragraph.tplEdit templateOverride template
5content/datatype/view/ezxmltags/line.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/line.tplEdit templateOverride template
2content/datatype/view/ezimage.tpl<No override>extension/sevenx/design/simple/templates/content/datatype/view/ezimage.tplEdit templateOverride template
1content/datatype/view/ezxmltags/link.tpl<No override>design/standard/templates/content/datatype/view/ezxmltags/link.tplEdit templateOverride template
1pagelayout.tpl<No override>extension/sevenx/design/simple/templates/pagelayout.tplEdit templateOverride template
 Number of times templates used: 28
 Number of unique templates used: 7

Time used to render debug report: 0.0001 secs