protected function getEditingLocks($page, $doLock=false) {
		$currentStage = Versioned::current_stage();

		Versioned::reading_stage('Stage');

		$filter = array(
			'WikiPage.ID' => $page->ID,
			'WikiLockExpiry' => date('Y-m-d H:i:s'),
		);

		$user = Member::currentUser();
		$currentLock = WikiPage::get()->filter($filter)->first();

		$lock = null;

		if ($currentLock && $currentLock->ID) {
			// if there's a current lock in place, lets return that value
			$lock = array(
				'user' => $currentLock->WikiLastEditor,
				'expires' => $currentLock->WikiLockExpiry,
			);
		}

		// If we're trying to take the lock, make sure that a) there's no existing
		// lock or b) we currently hold the lock
		if ($doLock && ($currentLock == null || !$currentLock->ID || $currentLock->WikiLastEditor == $user->Email)) {
			$page->lock();
		}

		Versioned::reading_stage($currentStage);

		return $lock;
	}