Hello,
I'm using WordPress version 3.3.1, Role Scoper Version 1.3.53 and Revisionary Version 1.1.9.
Recently, my site's revisors have been getting an error message when they attempt to revise a post that has already been published. They've been able to do this in the past, so I'm not sure when it stopped working but I think it was early January.
When revisors create a post and submit it for review everything works fine until they want to make a change to that post (after I've published it). When they edit the post and submit it for review again, they get this message:
Fatal error: Call to undefined method ScoperAdmin::flt_pre_object_terms() in /nfs/c09/h02/mnt/135310/domains/law.nccu.edu/html/wordpress/wp-content/plugins/role-scoper/revisionary-content-roles_rs.php on line 8
<?php
class Scoper_RvyContentRoles extends RevisionaryContentRoles {
function filter_object_terms( $terms, $taxonomy ) {
global $scoper_admin;
if ( ! empty($scoper_admin) ) {
return $scoper_admin->flt_pre_object_terms( $terms, $taxonomy );
}
return array();
}
function get_metagroup_edit_link( $metagroup_name ) {
require_once( SCOPER_ABSPATH . '/admin/admin_lib_rs.php');
if ( $group = ScoperAdminLib::get_group_by_name( '[' . $metagroup_name . ']' ) ) {
return "admin.php?page=rs-groups&mode=edit&id=$group->ID";
}
return '';
}
function get_metagroup_members( $metagroup_name, $args = array() ) {
require_once( SCOPER_ABSPATH . '/admin/admin_lib_rs.php');
if ( $group = ScoperAdminLib::get_group_by_name( '[' . $metagroup_name . ']' ) ) {
return ScoperAdminLib::get_group_members( $group->ID, COL_ID_RS, true );
}
return array();
}
function users_who_can( $reqd_caps, $object_id = 0, $args = array() ) {
global $scoper;
$defaults = array( 'src_name' => 'post' );
$args = array_merge( $defaults, $args );
extract($args, EXTR_SKIP);
if ( ! empty($scoper) ) {
$cols = ! empty( $args['cols'] ) ? $args['cols'] : 'all';
return $scoper->users_who_can( $reqd_caps, $cols, $src_name, $object_id, $args );
}
return array();
}
function ensure_init() {
global $scoper;
if ( ! isset($scoper) || is_null($scoper) ) {
require_once( SCOPER_ABSPATH . '/role-scoper_main.php');
$scoper = new Scoper();
scoper_init();
}
if ( empty($scoper->data_sources) )
$scoper->load_config();
}
function add_listed_ids( $src_name, $object_type, $id ) {
$GLOBALS['scoper']->listed_ids[$src_name][$id] = true;
}
function set_hascap_flags( $flags ) {
global $scoper;
if ( ! is_array($flags) )
return;
foreach( $flags as $key => $val ) {
$scoper->cap_interceptor->$key = $val;
}
}
function is_direct_file_access() {
return ! empty( $GLOBALS['scoper']->direct_file_access );
}
}
?>
Any advice?
Thanks for your help,
YPH