1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
|
<?php
/**
* $Header$
*
* Copyright ( c ) 2004 bitweaver.org
* Copyright ( c ) 2003 tikwiki.org
* Copyright ( c ) 2002-2003, Luis Argerich, Garland Foster, Eduardo Polidor, et. al.
* All Rights Reserved. See below for details and a complete list of authors.
* Licensed under the GNU LESSER GENERAL PUBLIC LICENSE. See http://www.gnu.org/copyleft/lesser.html for details
*
* $Id$
* @package pigeonholes
* @subpackage functions
*/
/**
* required setup
*/
require_once( '../kernel/setup_inc.php' );
$gBitSystem->verifyPackage( 'pigeonholes' );
$gBitSystem->verifyPermission( 'p_pigeonholes_view' );
include_once( PIGEONHOLES_PKG_PATH.'lookup_pigeonholes_inc.php' );
/* If we came in via structure_id redirect to content_id */
if (isset($_REQUEST['structure_id'])) {
header("Location:".$gContent->getDisplayUrl());
}
$gBitSmarty->assignByRef( 'memberFeedback', $memberFeedback = array() );
// set up structure related stuff
global $gStructure;
if( !@BitBase::verifyId( $gContent->mInfo['root_structure_id'] ) ) {
header( "Location:".PIGEONHOLES_PKG_URL."list.php" );
}
$gStructure = new LibertyStructure( $gContent->mInfo['root_structure_id'] );
$gStructure->load();
// expunge request
if( !empty( $_REQUEST['action'] ) ) {
if( $_REQUEST['action'] == 'dismember' && !empty( $_REQUEST['content_id'] ) && !empty( $_REQUEST['parent_id'] ) && $gContent->verifyUpdatePermission() ) {
if( $gContent->expungePigeonholeMember( array( 'parent_id' => $_REQUEST['content_id'], 'member_id' => $_REQUEST['parent_id'] ) ) ) {
$feedback['success'] = tra( 'The item was successfully removed' );
} else {
$feedback['error'] = tra( 'The item could not be removed' );
}
}
}
// confirm that structure is valid
if( empty( $gStructure ) || !$gStructure->isValid() ) {
$gBitSystem->fatalError( tra( 'Invalid structure' ));
}
$gBitSmarty->assignByRef( 'gStructure', $gStructure );
$gBitSmarty->assign( 'structureInfo', $gStructure->mInfo );
$gBitSmarty->assign( 'subtree', $gStructure->getSubTree( $gStructure->mStructureId ) );
if( $gContent->checkPathPermissions( $gContent->getField( 'path' ) ) ) {
$listHash = array(
'root_structure_id' => $gContent->mInfo['root_structure_id'],
'structure_id' => $gContent->mInfo['structure_id'],
'parse_data' => TRUE,
'max_records' => -1,
'load_extras' => TRUE,
'members_max_records' => -1,
);
$pigeonList = $gContent->getList( $listHash );
$gBitSmarty->assign( 'pigeonList', $pigeonList );
} else {
$memberFeedback['warning'] = tra( "You do not have the required permissions to view the content of this category" );
}
$gContent->addHit();
// Display the template
$gBitSystem->display( 'bitpackage:pigeonholes/view_structure.tpl', tra( 'View Pigeonhole' ) , array( 'display_mode' => 'display' ));
?>
|