Forums / Developer / Can't preview file datatype before...
Issam MOUZOUN
Monday 21 December 2009 8:07:40 am
Hello,
I develop a subscription module, any people can subscribe and must attach file (ezbinaryfile) and wait my approbation,.
My problem is i can't preview the attached document during before approving
I developp with ez 4.1.3
Thanks
Jérôme Vieilledent
Tuesday 22 December 2009 12:30:30 am
Hi Issam
Maybe you should give a try to eZ Approve 2. It's much more advanced thant standard eZ Approve workflow.
Anyway, I'm surprised that you can't preview the binary file. I just tested on my 4.2 instance and it smells like a bug in content/download module...
Tuesday 22 December 2009 1:15:03 am
OK, I found out where the problem is, and this is a registered bug. When running content/download, Exponential will check the node assignments of the attribute parent object. But in that case, the object has no node assignment because it's not published yet !Problem occurs in kernel/content/download.php, lines 52 to 79
// Get locations. $nodeAssignments = $contentObject->attribute( 'assigned_nodes' ); if ( count( $nodeAssignments ) === 0 ) { // oops, no locations. probably it's related object. Let's check his owners $ownerList = eZContentObject::fetch( $contentObjectID )->reverseRelatedObjectList( false, false, false, false ); foreach ( $ownerList as $owner ) { if ( is_object( $owner ) ) { $ownerNodeAssignments = $owner->attribute( 'assigned_nodes' ); $nodeAssignments = array_merge( $nodeAssignments, $ownerNodeAssignments ); } } } // If exists location that current user has access to and location is visible. $canAccess = false; foreach ( $nodeAssignments as $nodeAssignment ) { if ( ( eZContentObjectTreeNode::showInvisibleNodes() || !$nodeAssignment->attribute( 'is_invisible' ) ) and $nodeAssignment->canRead() ) { $canAccess = true; break; } } if ( !$canAccess ) return $Module->handleError( eZError::KERNEL_NOT_AVAILABLE, 'kernel' );