| [ Index ] |
|
Code source de eZ Publish 3.9.0 |
1 <?php 2 // 3 // Definition of eZPackageFunctionCollection class 4 // 5 // Created on: <11-Aug-2003 18:30:26 amos> 6 // 7 // SOFTWARE NAME: eZ publish 8 // SOFTWARE RELEASE: 3.9.0 9 // BUILD VERSION: 17785 10 // COPYRIGHT NOTICE: Copyright (C) 1999-2006 eZ systems AS 11 // SOFTWARE LICENSE: GNU General Public License v2.0 12 // NOTICE: > 13 // This program is free software; you can redistribute it and/or 14 // modify it under the terms of version 2.0 of the GNU General 15 // Public License as published by the Free Software Foundation. 16 // 17 // This program is distributed in the hope that it will be useful, 18 // but WITHOUT ANY WARRANTY; without even the implied warranty of 19 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 20 // GNU General Public License for more details. 21 // 22 // You should have received a copy of version 2.0 of the GNU General 23 // Public License along with this program; if not, write to the Free 24 // Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, 25 // MA 02110-1301, USA. 26 // 27 // 28 29 /*! \file ezpackagefunctioncollection.php 30 */ 31 32 /*! 33 \class eZPackageFunctionCollection ezpackagefunctioncollection.php 34 \brief The class eZPackageFunctionCollection does 35 36 */ 37 38 include_once ( 'kernel/error/errors.php' ); 39 40 class eZPackageFunctionCollection 41 { 42 /*! 43 Constructor 44 */ 45 function eZPackageFunctionCollection() 46 { 47 } 48 49 function fetchList( $filterArray = false, $offset, $limit, $repositoryID ) 50 { 51 $filterParams = array(); 52 $filterList = false; 53 if ( isset( $filterArray ) and 54 is_array( $filterArray ) and 55 count( $filterArray ) > 0 ) 56 { 57 $filterList = $filterArray; 58 if ( count( $filterArray ) > 1 and 59 !is_array( $filterArray[0] ) ) 60 { 61 $filterList = array( $filterArray ); 62 } 63 } 64 if ( $filterList !== false ) 65 { 66 foreach ( $filterList as $filter ) 67 { 68 if ( is_array( $filter ) and count( $filter ) > 0 ) 69 { 70 $filterName = $filter[0]; 71 switch ( $filterName ) 72 { 73 case 'type': 74 { 75 $typeValue = $filter[1]; 76 $typeParam = array( 'type' => $typeValue ); 77 $filterParams = array_merge( $filterParams, $typeParam ); 78 } break; 79 case 'priority': 80 { 81 $priorityValue = $filter[1]; 82 $priorityParam = array( 'priority' => $priorityValue ); 83 $filterParams = array_merge( $filterParams, $priorityParam ); 84 } break; 85 case 'vendor': 86 { 87 $vendorValue = $filter[1]; 88 $vendorParam = array( 'vendor' => $vendorValue ); 89 $filterParams = array_merge( $filterParams, $vendorParam ); 90 } break; 91 case 'extension': 92 { 93 $extensionValue = $filter[1]; 94 $extensionParam = array( 'extension' => $extensionValue ); 95 $filterParams = array_merge( $filterParams, $extensionParam ); 96 } break; 97 default: 98 { 99 eZDebug::writeWarning( 'Unknown package filter name: ' . $filterName ); 100 continue; 101 }; 102 } 103 } 104 } 105 } 106 $params = array( 'offset' => $offset, 107 'limit' => $limit ); 108 if ( $repositoryID ) 109 $params['repository_id'] = $repositoryID; 110 111 include_once ( 'kernel/classes/ezpackage.php' ); 112 $packageList = eZPackage::fetchPackages( $params, 113 $filterParams ); 114 if ( $packageList === null ) 115 return array( 'error' => array( 'error_type' => 'kernel', 116 'error_code' => EZ_ERROR_KERNEL_NOT_FOUND ) ); 117 return array( 'result' => $packageList ); 118 } 119 120 function fetchPackage( $packageName, $repositoryID ) 121 { 122 include_once ( 'kernel/classes/ezpackage.php' ); 123 $package = eZPackage::fetch( $packageName, false, $repositoryID ); 124 if ( $package === false ) 125 { 126 $retValue = array( 'error' => array( 'error_type' => 'kernel', 127 'error_code' => EZ_ERROR_KERNEL_NOT_FOUND ) ); 128 } 129 else 130 { 131 $retValue = array( 'result' => $package ); 132 } 133 return $retValue; 134 } 135 136 function fetchDependentPackageList( $packageName, $filterArray = false, $repositoryID ) 137 { 138 $filterParams = array(); 139 $filterList = false; 140 if ( isset( $filterArray ) and 141 is_array( $filterArray ) and 142 count( $filterArray ) > 0 ) 143 { 144 $filterList = $filterArray; 145 if ( count( $filterArray ) > 1 and 146 !is_array( $filterArray[0] ) ) 147 { 148 $filterList = array( $filterArray ); 149 } 150 } 151 if ( $filterList !== false ) 152 { 153 foreach ( $filterList as $filter ) 154 { 155 if ( is_array( $filter ) and count( $filter ) > 0 ) 156 { 157 $filterName = $filter[0]; 158 switch ( $filterName ) 159 { 160 case 'type': 161 { 162 $typeValue = $filter[1]; 163 $typeParam = array( 'type' => $typeValue ); 164 $filterParams = array_merge( $filterParams, $typeParam ); 165 } break; 166 case 'name': 167 { 168 $nameValue = $filter[1]; 169 $nameParam = array( 'name' => $nameValue ); 170 $filterParams = array_merge( $filterParams, $nameParam ); 171 } break; 172 case 'priority': 173 { 174 $priorityValue = $filter[1]; 175 $priorityParam = array( 'priority' => $priorityValue ); 176 $filterParams = array_merge( $filterParams, $priorityParam ); 177 } break; 178 case 'vendor': 179 { 180 $vendorValue = $filter[1]; 181 $vendorParam = array( 'vendor' => $vendorValue ); 182 $filterParams = array_merge( $filterParams, $vendorParam ); 183 } break; 184 case 'extension': 185 { 186 $extensionValue = $filter[1]; 187 $extensionParam = array( 'extension' => $extensionValue ); 188 $filterParams = array_merge( $filterParams, $extensionParam ); 189 } break; 190 default: 191 { 192 eZDebug::writeWarning( 'Unknown package filter name: ' . $filterName ); 193 continue; 194 }; 195 } 196 } 197 } 198 } 199 include_once ( 'kernel/classes/ezpackage.php' ); 200 $package = eZPackage::fetch( $packageName, false, $repositoryID ); 201 $packageList = $package->fetchDependentPackages( $filterParams ); 202 if ( $packageList === false ) 203 { 204 $retValue = array( 'error' => array( 'error_type' => 'kernel', 205 'error_code' => EZ_ERROR_KERNEL_NOT_FOUND ) ); 206 } 207 else 208 { 209 $retValue = array( 'result' => $packageList ); 210 } 211 return $retValue; 212 } 213 214 function fetchMaintainerRoleList( $packageType, $checkRoles ) 215 { 216 include_once ( 'kernel/classes/ezpackage.php' ); 217 $list = eZPackage::fetchMaintainerRoleList( $packageType, $checkRoles ); 218 if ( $list === false ) 219 return array( 'error' => array( 'error_type' => 'kernel', 220 'error_code' => EZ_ERROR_KERNEL_NOT_FOUND ) ); 221 return array( 'result' => $list ); 222 } 223 224 function fetchRepositoryList() 225 { 226 include_once ( 'kernel/classes/ezpackage.php' ); 227 $list = eZPackage::packageRepositories(); 228 if ( $list === false ) 229 return array( 'error' => array( 'error_type' => 'kernel', 230 'error_code' => EZ_ERROR_KERNEL_NOT_FOUND ) ); 231 return array( 'result' => $list ); 232 } 233 234 function canCreate() 235 { 236 return array( 'result' => eZPackage::canUsePolicyFunction( 'create' ) ); 237 } 238 239 function canEdit() 240 { 241 return array( 'result' => eZPackage::canUsePolicyFunction( 'edit' ) ); 242 } 243 244 function canImport() 245 { 246 return array( 'result' => eZPackage::canUsePolicyFunction( 'import' ) ); 247 } 248 249 function canInstall() 250 { 251 return array( 'result' => eZPackage::canUsePolicyFunction( 'install' ) ); 252 } 253 254 function canExport() 255 { 256 return array( 'result' => eZPackage::canUsePolicyFunction( 'export' ) ); 257 } 258 259 function canRead() 260 { 261 return array( 'result' => eZPackage::canUsePolicyFunction( 'read' ) ); 262 } 263 264 function canList() 265 { 266 return array( 'result' => eZPackage::canUsePolicyFunction( 'list' ) ); 267 } 268 269 function canRemove() 270 { 271 return array( 'result' => eZPackage::canUsePolicyFunction( 'remove' ) ); 272 } 273 } 274 275 ?>
titre
Description
Corps
titre
Description
Corps
titre
Description
Corps
titre
Corps
| Généré le : Sat Feb 24 10:30:04 2007 | par Balluche grâce à PHPXref 0.7 |