Code Duplication    Length = 10-11 lines in 2 locations

model/versioning/Versioned.php 2 locations

@@ 1363-1372 (lines=10) @@
1360
	 * @param Member $member
1361
	 * @return bool
1362
	 */
1363
	public function canViewStage($stage = 'Live', $member = null) {
1364
		$oldMode = Versioned::get_reading_mode();
1365
		Versioned::set_stage($stage);
1366
1367
		$owner = $this->owner;
1368
		$versionFromStage = DataObject::get($owner->class)->byID($owner->ID);
1369
1370
		Versioned::set_reading_mode($oldMode);
1371
		return $versionFromStage ? $versionFromStage->canView($member) : false;
1372
	}
1373
1374
	/**
1375
	 * Determine if a table is supporting the Versioned extensions (e.g.
@@ 2187-2197 (lines=11) @@
2184
	 * @param boolean $forceInsert
2185
	 * @return int The ID of the record
2186
	 */
2187
	public function writeToStage($stage, $forceInsert = false) {
2188
		$oldMode = Versioned::get_reading_mode();
2189
		Versioned::set_stage($stage);
2190
2191
		$owner = $this->owner;
2192
		$owner->forceChange();
2193
		$result = $owner->write(false, $forceInsert);
2194
		Versioned::set_reading_mode($oldMode);
2195
2196
		return $result;
2197
	}
2198
2199
	/**
2200
	 * Roll the draft version of this record to match the published record.