/** * @dataProvider provideSetResult * @covers Status::setResult */ public function testSetResult($ok, $value = null) { $status = new Status(); $status->setResult($ok, $value); $this->assertEquals($ok, $status->isOK()); $this->assertEquals($value, $status->getValue()); }
/** * Release the locks when this goes out of scope */ function __destruct() { $wasOk = $this->status->isOK(); $this->status->merge( $this->manager->unlockByType( $this->pathsByType ) ); if ( $wasOk ) { // Make sure status is OK, despite any unlockFiles() fatals $this->status->setResult( true, $this->status->value ); } }
/** * @param $wikiPage * @param \User $user * @param $content * @param $summary * @param $isMinor * @param $isWatch * @param $section * @param $flags * @param \Status $status * * @return bool */ public function onPageContentSave($wikiPage, $user, $content, $summary, $isMinor, $isWatch, $section, $flags, $status) { if ($user && !$user->isEmailConfirmed()) { if (!$this->testResponse()) { $status->setResult(false); $status->error("recaptcha-failed"); return false; } } return true; }
/** * Map an existing Wikia user to a Facebook id * If an exact or partial match of the map already exists, OR * if creation of mapping does not succeed, returns not-OK Status * * @param int $wikiaUserId * @param int $fbUserId * @return \Status (status value will be null or \FacebookMapModel if successfully created) */ public function connectToFacebook($wikiaUserId, $fbUserId) { $status = new Status(); try { $map = \FacebookMapModel::getUserMapping($wikiaUserId, $fbUserId); if ($map) { // Error! There is already a mapping $status->setResult(false); $status->error('fbconnect-error-already-connected'); } else { $bizToken = \FacebookClient::getInstance()->getBizToken(); $map = \FacebookMapModel::createUserMapping($wikiaUserId, $fbUserId, $bizToken); if ($map instanceof \FacebookMapModel) { $status->setResult(true, $map); } else { $status->setResult(false); $status->error('fbconnect-error'); } } } catch (\Exception $e) { $messageParams = []; switch ($e->getCode()) { case \FacebookMapModel::ERROR_WIKIA_USER_ID_MISMATCH: $messageParams[] = 'fbconnect-error-fb-account-in-use'; $messageParams[] = \User::whoIs($wikiaUserId); break; case \FacebookMapModel::ERROR_FACEBOOK_USER_ID_MISMATCH: $messageParams[] = 'fbconnect-error-already-connected'; break; default: $messageParams[] = 'fbconnect-error'; } $status->setResult(false); call_user_func_array([$status, 'error'], $messageParams); } return $status; }