[cc-commits] [CC SVN] r12646 - cchost/trunk/cchost_lib
webmaster at creativecommons.org
webmaster at creativecommons.org
Sun May 24 14:11:02 EDT 2009
Author: fourstones
Date: 2009-05-24 18:11:02 +0000 (Sun, 24 May 2009)
New Revision: 12646
Modified:
cchost/trunk/cchost_lib/cc-dataview.php
cchost/trunk/cchost_lib/cc-filters.php
cchost/trunk/cchost_lib/cc-handlers.inc
Log:
fixed bug in filter override for OCAL
Modified: cchost/trunk/cchost_lib/cc-dataview.php
===================================================================
--- cchost/trunk/cchost_lib/cc-dataview.php 2009-05-24 03:38:38 UTC (rev 12645)
+++ cchost/trunk/cchost_lib/cc-dataview.php 2009-05-24 18:11:02 UTC (rev 12646)
@@ -215,15 +215,30 @@
function FilterRecords(&$records,$info)
{
- while( count($info['e']) )
+ global $cc_dont_eat_std_filters;
+
+ if( empty($cc_dont_eat_std_filters) )
+ {
+ while( count($info['e']) )
+ {
+ $k = array_keys($info['e']);
+ $e = $info['e'][$k[0]];
+ CCEvents::Invoke( $e, array( &$records, &$info ) );
+ if( in_array( $e, $info['e'] ) )
+ $info['e'] = array_diff( $info['e'], array( $e ) );
+ }
+ return $info['e'];
+ }
+ else
{
- $k = array_keys($info['e']);
- $e = $info['e'][$k[0]];
- CCEvents::Invoke( $e, array( &$records, &$info ) );
- if( in_array( $e, $info['e'] ) )
- $info['e'] = array_diff( $info['e'], array( $e ) );
+ $events = $info['e'];
+ foreach( $events as $e )
+ {
+ $info['e'] = array( $e );
+ CCEvents::Invoke( $e, array( &$records, &$info ) );
+ }
+ $info['e'] = $events;
}
- return $info['e'];
}
function MakeTagFilter( $tags, $type='all', $tagfield='upload_tags' )
Modified: cchost/trunk/cchost_lib/cc-filters.php
===================================================================
--- cchost/trunk/cchost_lib/cc-filters.php 2009-05-24 03:38:38 UTC (rev 12645)
+++ cchost/trunk/cchost_lib/cc-filters.php 2009-05-24 18:11:02 UTC (rev 12646)
@@ -4,21 +4,28 @@
if( !defined('IN_CC_HOST') )
die( 'Welcome to ccHost' );
-
function cc_filter_std(&$records,&$dataview_info)
{
+ global $cc_dont_eat_std_filters;
global $CC_GLOBALS;
+
$c = count($records);
$k = array_keys($records);
require_once('cchost_lib/cc-tags.php');
+
+ foreach( array( CC_EVENT_FILTER_DOWNLOAD_URL,
+ CC_EVENT_FILTER_EXTRA,
+ CC_EVENT_FILTER_FILES,
+ CC_EVENT_FILTER_NUM_FILES,
+ CC_EVENT_FILTER_RATINGS_STARS,
+ CC_EVENT_FILTER_REMIXES_FULL,
+ CC_EVENT_FILTER_REMIXES_SHORT,
+ CC_EVENT_FILTER_UPLOAD_MENU,
+ CC_EVENT_FILTER_UPLOAD_TAGS,
+ CC_EVENT_FILTER_UPLOAD_USER_TAGS,
+ ) as $e )
+ {
- foreach( array( CC_EVENT_FILTER_UPLOAD_USER_TAGS, CC_EVENT_FILTER_REMIXES_SHORT, CC_EVENT_FILTER_FILES,
- CC_EVENT_FILTER_UPLOAD_TAGS, CC_EVENT_FILTER_REMIXES_FULL, CC_EVENT_FILTER_EXTRA,
- CC_EVENT_FILTER_RATINGS_STARS, CC_EVENT_FILTER_DOWNLOAD_URL,
- CC_EVENT_FILTER_UPLOAD_MENU, CC_EVENT_FILTER_NUM_FILES, ) as $e )
- {
- global $cc_dont_eat_std_filters;
-
if( !in_array( $e, $dataview_info['e'] ) )
continue;
Modified: cchost/trunk/cchost_lib/cc-handlers.inc
===================================================================
--- cchost/trunk/cchost_lib/cc-handlers.inc 2009-05-24 03:38:38 UTC (rev 12645)
+++ cchost/trunk/cchost_lib/cc-handlers.inc 2009-05-24 18:11:02 UTC (rev 12646)
@@ -187,15 +187,17 @@
CCEvents::AddHandler(CC_EVENT_MAP_URLS, array( 'CCUserHook', 'OnMapUrls'), 'cchost_lib/cc-user-hook.php' );
CCEvents::AddHandler(CC_EVENT_FILTER_DOWNLOAD_URL, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
+CCEvents::AddHandler(CC_EVENT_FILTER_EXTRA, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
+CCEvents::AddHandler(CC_EVENT_FILTER_FILES, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
CCEvents::AddHandler(CC_EVENT_FILTER_NUM_FILES, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
-CCEvents::AddHandler(CC_EVENT_FILTER_UPLOAD_USER_TAGS, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
+CCEvents::AddHandler(CC_EVENT_FILTER_RATINGS_STARS, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
+CCEvents::AddHandler(CC_EVENT_FILTER_REMIXES_FULL, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
CCEvents::AddHandler(CC_EVENT_FILTER_REMIXES_SHORT, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
-CCEvents::AddHandler(CC_EVENT_FILTER_REMIXES_FULL, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
-CCEvents::AddHandler(CC_EVENT_FILTER_RATINGS_STARS, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
-CCEvents::AddHandler(CC_EVENT_FILTER_FILES, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
+CCEvents::AddHandler(CC_EVENT_FILTER_UPLOAD_MENU, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
CCEvents::AddHandler(CC_EVENT_FILTER_UPLOAD_TAGS, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
-CCEvents::AddHandler(CC_EVENT_FILTER_EXTRA, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
+CCEvents::AddHandler(CC_EVENT_FILTER_UPLOAD_USER_TAGS, 'cc_filter_std', 'cchost_lib/cc-filters.php' );
+
CCEvents::AddHandler(CC_EVENT_FILTER_POOL_ITEMS, 'cc_filter_pool_items', 'cchost_lib/cc-pool-filters.php' );
More information about the cc-commits
mailing list