*
* @file
* @author Niklas Laxström
- * @license http://www.gnu.org/copyleft/gpl.html GNU General Public License 2.0 or later
+ * @license GPL-2.0-or-later
* @since 1.22
*/
}
}
- $old = $this->parseBitField( $rawParams['6::ofield'] );
- $new = $this->parseBitField( $rawParams['7::nfield'] );
if ( !is_array( $rawParams['5::ids'] ) ) {
$rawParams['5::ids'] = explode( ',', $rawParams['5::ids'] );
}
$params = [
'::type' => $rawParams['4::type'],
':array:ids' => $rawParams['5::ids'],
- ':assoc:old' => [ 'bitmask' => $old ],
- ':assoc:new' => [ 'bitmask' => $new ],
];
static $fields = [
Revision::DELETED_USER => 'user',
Revision::DELETED_RESTRICTED => 'restricted',
];
- foreach ( $fields as $bit => $key ) {
- $params[':assoc:old'][$key] = (bool)( $old & $bit );
- $params[':assoc:new'][$key] = (bool)( $new & $bit );
+
+ if ( isset( $rawParams['6::ofield'] ) ) {
+ $old = $this->parseBitField( $rawParams['6::ofield'] );
+ $params[':assoc:old'] = [ 'bitmask' => $old ];
+ foreach ( $fields as $bit => $key ) {
+ $params[':assoc:old'][$key] = (bool)( $old & $bit );
+ }
+ }
+ if ( isset( $rawParams['7::nfield'] ) ) {
+ $new = $this->parseBitField( $rawParams['7::nfield'] );
+ $params[':assoc:new'] = [ 'bitmask' => $new ];
+ foreach ( $fields as $bit => $key ) {
+ $params[':assoc:new'][$key] = (bool)( $new & $bit );
+ }
}
} elseif ( $subtype === 'restore' ) {
$rawParams = $entry->getParameters();